home *** CD-ROM | disk | FTP | other *** search
Unknown | 2004-06-11 | 26.3 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 00 00 00 00 00 00 00 | 7e a3 03 2f 2f 3d 3d 3d |........|~..//===|
|00000010| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000020| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000030| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000040| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000050| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0a 2f 2f 20 41 |========|==..// A|
|00000060| 53 56 65 68 69 63 6c 65 | 5f 53 70 61 63 65 46 69 |SVehicle|_SpaceFi|
|00000070| 67 68 74 65 72 0d 0a 2f | 2f 3d 3d 3d 3d 3d 3d 3d |ghter../|/=======|
|00000080| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 0d 0a | 2f 2f 20 43 72 65 61 74 |======..|// Creat|
|000000d0| 65 64 20 62 79 20 4c 61 | 75 72 65 6e 74 20 44 65 |ed by La|urent De|
|000000e0| 6c 61 79 65 6e 0d 0a 2f | 2f 20 a9 20 32 30 30 33 |layen../|/ . 2003|
|000000f0| 2c 20 45 70 69 63 20 47 | 61 6d 65 73 2c 20 49 6e |, Epic G|ames, In|
|00000100| 63 2e 20 20 41 6c 6c 20 | 52 69 67 68 74 73 20 52 |c. All |Rights R|
|00000110| 65 73 65 72 76 65 64 0d | 0a 2f 2f 3d 3d 3d 3d 3d |eserved.|.//=====|
|00000120| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000130| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000140| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000150| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000160| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 0a 0d 0a 63 6c 61 73 |========|....clas|
|00000170| 73 20 41 53 56 65 68 69 | 63 6c 65 5f 53 70 61 63 |s ASVehi|cle_Spac|
|00000180| 65 46 69 67 68 74 65 72 | 20 65 78 74 65 6e 64 73 |eFighter| extends|
|00000190| 20 41 53 56 65 68 69 63 | 6c 65 0d 0a 09 61 62 73 | ASVehic|le...abs|
|000001a0| 74 72 61 63 74 0d 0a 09 | 63 6f 6e 66 69 67 28 55 |tract...|config(U|
|000001b0| 73 65 72 29 3b 0d 0a 0d | 0a 2f 2f 20 4d 6f 76 65 |ser);...|.// Move|
|000001c0| 6d 65 6e 74 0d 0a 76 61 | 72 09 09 09 09 51 75 61 |ment..va|r....Qua|
|000001d0| 74 09 53 70 61 63 65 46 | 69 67 68 74 65 72 52 6f |t.SpaceF|ighterRo|
|000001e0| 74 61 74 69 6f 6e 3b 09 | 2f 2f 20 53 70 61 63 65 |tation;.|// Space|
|000001f0| 20 46 69 67 68 74 65 72 | 20 61 63 74 75 61 6c 20 | Fighter| actual |
|00000200| 72 6f 74 61 74 69 6f 6e | 20 28 75 73 69 6e 67 20 |rotation| (using |
|00000210| 71 75 61 74 65 72 6e 69 | 6f 6e 73 20 69 6e 73 74 |quaterni|ons inst|
|00000220| 65 61 64 20 6f 66 20 72 | 6f 74 61 74 6f 72 73 29 |ead of r|otators)|
|00000230| 0d 0a 76 61 72 09 09 09 | 09 66 6c 6f 61 74 09 59 |..var...|.float.Y|
|00000240| 61 77 41 63 63 65 6c 2c | 20 50 69 74 63 68 41 63 |awAccel,| PitchAc|
|00000250| 63 65 6c 2c 20 52 6f 6c | 6c 41 63 63 65 6c 3b 0d |cel, Rol|lAccel;.|
|00000260| 0a 76 61 72 09 09 09 09 | 66 6c 6f 61 74 09 44 65 |.var....|float.De|
|00000270| 73 69 72 65 64 56 65 6c | 6f 63 69 74 79 3b 09 09 |siredVel|ocity;..|
|00000280| 2f 2f 20 52 61 6e 67 65 | 3a 20 45 6e 67 69 6e 65 |// Range|: Engine|
|00000290| 4d 69 6e 56 65 6c 6f 63 | 69 74 79 20 2d 3e 20 31 |MinVeloc|ity -> 1|
|000002a0| 30 30 30 0d 0a 76 61 72 | 28 29 09 63 6f 6e 73 74 |000..var|().const|
|000002b0| 09 66 6c 6f 61 74 09 45 | 6e 67 69 6e 65 4d 69 6e |.float.E|ngineMin|
|000002c0| 56 65 6c 6f 63 69 74 79 | 3b 09 09 2f 2f 20 6d 69 |Velocity|;..// mi|
|000002d0| 6e 69 6d 75 6d 20 66 6f | 72 77 61 72 64 20 76 65 |nimum fo|rward ve|
|000002e0| 6c 6f 63 69 74 79 0d 0a | 76 61 72 28 29 09 63 6f |locity..|var().co|
|000002f0| 6e 73 74 09 66 6c 6f 61 | 74 09 56 65 68 69 63 6c |nst.floa|t.Vehicl|
|00000300| 65 52 6f 74 61 74 69 6f | 6e 53 70 65 65 64 3b 0d |eRotatio|nSpeed;.|
|00000310| 0a 76 61 72 28 29 09 63 | 6f 6e 73 74 09 66 6c 6f |.var().c|onst.flo|
|00000320| 61 74 09 52 6f 74 61 74 | 69 6f 6e 49 6e 65 72 74 |at.Rotat|ionInert|
|00000330| 69 61 3b 0d 0a 76 61 72 | 28 29 09 09 09 66 6c 6f |ia;..var|()...flo|
|00000340| 61 74 20 20 20 53 74 72 | 61 66 65 41 63 63 65 6c |at Str|afeAccel|
|00000350| 2c 20 53 74 72 61 66 65 | 41 63 63 65 6c 52 61 74 |, Strafe|AccelRat|
|00000360| 65 2c 20 4d 61 78 53 74 | 72 61 66 65 3b 0d 0a 76 |e, MaxSt|rafe;..v|
|00000370| 61 72 28 29 09 09 09 66 | 6c 6f 61 74 20 20 20 52 |ar()...f|loat R|
|00000380| 6f 6c 6c 41 75 74 6f 43 | 6f 72 72 65 63 74 53 70 |ollAutoC|orrectSp|
|00000390| 65 65 64 3b 0d 0a 0d 0a | 0d 0a 76 61 72 09 09 09 |eed;....|..var...|
|000003a0| 09 62 6f 6f 6c 09 62 49 | 6e 69 74 69 61 6c 69 7a |.bool.bI|nitializ|
|000003b0| 65 64 3b 09 09 09 2f 2f | 20 74 68 69 73 20 74 6f |ed;...//| this to|
|000003c0| 20 63 61 74 63 68 20 66 | 69 72 73 74 20 74 69 63 | catch f|irst tic|
|000003d0| 6b 20 77 68 65 6e 20 6d | 61 74 63 68 20 69 73 20 |k when m|atch is |
|000003e0| 73 74 61 72 74 65 64 20 | 61 6e 64 20 76 65 6c 6f |started |and velo|
|000003f0| 63 69 74 79 20 72 65 73 | 65 74 20 28 73 6f 20 73 |city res|et (so s|
|00000400| 68 69 70 20 77 6f 75 6c | 64 20 61 6c 77 61 79 73 |hip woul|d always|
|00000410| 20 68 61 76 65 20 61 20 | 72 6f 74 61 74 69 6f 6e | have a |rotation|
|00000420| 3d 3d 28 30 2c 30 2c 30 | 29 29 0d 0a 76 61 72 09 |==(0,0,0|))..var.|
|00000430| 09 09 09 62 6f 6f 6c 09 | 62 50 6f 73 74 4e 65 74 |...bool.|bPostNet|
|00000440| 43 61 6c 6c 65 64 3b 0d | 0a 76 61 72 09 09 09 09 |Called;.|.var....|
|00000450| 62 6f 6f 6c 09 62 47 65 | 61 72 55 70 3b 09 09 09 |bool.bGe|arUp;...|
|00000460| 09 2f 2f 20 4f 6e 63 65 | 20 66 6c 79 69 6e 67 20 |.// Once| flying |
|00000470| 61 6e 69 6d 61 74 69 6f | 6e 20 69 73 20 70 6c 61 |animatio|n is pla|
|00000480| 79 65 64 0d 0a 76 61 72 | 09 09 09 09 62 6f 6f 6c |yed..var|....bool|
|00000490| 09 62 53 70 65 65 64 46 | 69 6c 74 65 72 57 61 72 |.bSpeedF|ilterWar|
|000004a0| 6d 75 70 3b 0d 0a 76 61 | 72 09 09 09 09 62 6f 6f |mup;..va|r....boo|
|000004b0| 6c 09 62 41 75 74 6f 54 | 61 72 67 65 74 3b 09 09 |l.bAutoT|arget;..|
|000004c0| 09 2f 2f 20 61 75 74 6f | 6d 61 74 69 63 61 6c 6c |.// auto|maticall|
|000004d0| 79 20 74 61 72 67 65 74 | 20 63 6c 6f 73 65 73 74 |y target| closest|
|000004e0| 20 56 65 68 69 63 6c 65 | 0d 0a 76 61 72 09 09 09 | Vehicle|..var...|
|000004f0| 09 62 6f 6f 6c 09 62 54 | 61 72 67 65 74 43 6c 6f |.bool.bT|argetClo|
|00000500| 73 65 73 74 54 6f 43 72 | 6f 73 73 68 61 69 72 3b |sestToCr|osshair;|
|00000510| 0d 0a 76 61 72 09 09 09 | 09 62 6f 6f 6c 09 62 52 |..var...|.bool.bR|
|00000520| 6f 63 6b 65 74 4c 6f 61 | 64 65 64 3b 0d 0a 76 61 |ocketLoa|ded;..va|
|00000530| 72 09 09 09 09 62 6f 6f | 6c 09 62 48 75 6d 61 6e |r....boo|l.bHuman|
|00000540| 53 68 69 70 3b 0d 0a 0d | 0a 76 61 72 09 09 09 09 |Ship;...|.var....|
|00000550| 52 6f 74 61 74 6f 72 20 | 53 68 6f 74 44 6f 77 6e |Rotator |ShotDown|
|00000560| 52 6f 74 61 74 69 6f 6e | 3b 0d 0a 76 61 72 09 09 |Rotation|;..var..|
|00000570| 09 09 69 6e 74 09 09 54 | 6f 70 47 75 6e 43 6f 75 |..int..T|opGunCou|
|00000580| 6e 74 3b 0d 0a 0d 0a 76 | 61 72 09 6e 61 6d 65 20 |nt;....v|ar.name |
|00000590| 46 6c 79 69 6e 67 41 6e | 69 6d 3b 0d 0a 0d 0a 2f |FlyingAn|im;..../|
|000005a0| 2f 20 43 61 6d 65 72 61 | 0d 0a 76 61 72 20 52 6f |/ Camera|..var Ro|
|000005b0| 74 61 74 6f 72 09 09 4c | 61 73 74 43 61 6d 52 6f |tator..L|astCamRo|
|000005c0| 74 3b 0d 0a 76 61 72 09 | 66 6c 6f 61 74 09 09 6d |t;..var.|float..m|
|000005d0| 79 44 65 6c 74 61 54 69 | 6d 65 3b 0d 0a 76 61 72 |yDeltaTi|me;..var|
|000005e0| 09 66 6c 6f 61 74 09 09 | 4c 61 73 74 54 69 6d 65 |.float..|LastTime|
|000005f0| 53 65 63 6f 6e 64 73 3b | 0d 0a 76 61 72 09 66 6c |Seconds;|..var.fl|
|00000600| 6f 61 74 09 09 43 61 6d | 52 6f 74 61 74 69 6f 6e |oat..Cam|Rotation|
|00000610| 49 6e 65 72 74 69 61 3b | 0d 0a 0d 0a 2f 2f 20 48 |Inertia;|....// H|
|00000620| 55 44 0d 0a 76 61 72 09 | 09 09 09 73 74 72 69 6e |UD..var.|...strin|
|00000630| 67 09 09 44 65 6c 61 79 | 65 64 44 65 62 75 67 53 |g..Delay|edDebugS|
|00000640| 74 72 69 6e 67 3b 0d 0a | 76 61 72 20 6c 6f 63 61 |tring;..|var loca|
|00000650| 6c 69 7a 65 64 09 73 74 | 72 69 6e 67 09 09 54 65 |lized.st|ring..Te|
|00000660| 78 74 5f 53 70 65 65 64 | 3b 0d 0a 0d 0a 2f 2f 20 |xt_Speed|;....// |
|00000670| 46 58 0d 0a 76 61 72 09 | 45 6d 69 74 74 65 72 09 |FX..var.|Emitter.|
|00000680| 09 54 72 61 69 6c 45 6d | 69 74 74 65 72 3b 0d 0a |.TrailEm|itter;..|
|00000690| 76 61 72 09 66 6c 6f 61 | 74 09 09 54 72 61 69 6c |var.floa|t..Trail|
|000006a0| 4f 66 66 73 65 74 3b 0d | 0a 0d 0a 76 61 72 09 45 |Offset;.|...var.E|
|000006b0| 6d 69 74 74 65 72 09 09 | 53 6d 6f 6b 65 54 72 61 |mitter..|SmokeTra|
|000006c0| 69 6c 3b 0d 0a 76 61 72 | 20 63 6c 61 73 73 3c 45 |il;..var| class<E|
|000006d0| 6d 69 74 74 65 72 3e 20 | 53 68 6f 74 44 6f 77 6e |mitter> |ShotDown|
|000006e0| 46 58 43 6c 61 73 73 3b | 0d 0a 0d 0a 2f 2f 20 45 |FXClass;|....// E|
|000006f0| 6e 67 69 6e 65 20 53 70 | 65 65 64 20 73 6d 6f 6f |ngine Sp|eed smoo|
|00000700| 74 68 20 66 69 6c 74 65 | 72 20 28 66 6f 72 20 76 |th filte|r (for v|
|00000710| 65 6c 6f 63 69 74 79 20 | 6a 65 72 6b 79 6e 65 73 |elocity |jerkynes|
|00000720| 73 20 6f 6e 20 6c 6f 77 | 20 61 6e 64 20 6a 65 72 |s on low| and jer|
|00000730| 6b 79 20 46 50 53 29 0d | 0a 63 6f 6e 73 74 09 09 |ky FPS).|.const..|
|00000740| 09 53 70 65 65 64 46 69 | 6c 74 65 72 46 72 61 6d |.SpeedFi|lterFram|
|00000750| 65 73 20 3d 20 32 30 3b | 0d 0a 76 61 72 09 09 66 |es = 20;|..var..f|
|00000760| 6c 6f 61 74 09 53 70 65 | 65 64 46 69 6c 74 65 72 |loat.Spe|edFilter|
|00000770| 5b 53 70 65 65 64 46 69 | 6c 74 65 72 46 72 61 6d |[SpeedFi|lterFram|
|00000780| 65 73 5d 3b 0d 0a 76 61 | 72 09 09 69 6e 74 09 09 |es];..va|r..int..|
|00000790| 4e 65 78 74 53 70 65 65 | 64 46 69 6c 74 65 72 53 |NextSpee|dFilterS|
|000007a0| 6c 6f 74 3b 0d 0a 76 61 | 72 09 09 66 6c 6f 61 74 |lot;..va|r..float|
|000007b0| 09 53 6d 6f 6f 74 68 65 | 64 53 70 65 65 64 52 61 |.Smoothe|dSpeedRa|
|000007c0| 74 69 6f 3b 0d 0a 0d 0a | 2f 2f 20 52 6f 63 6b 65 |tio;....|// Rocke|
|000007d0| 74 73 0d 0a 76 61 72 09 | 09 56 65 63 74 6f 72 09 |ts..var.|.Vector.|
|000007e0| 52 6f 63 6b 65 74 4f 66 | 66 73 65 74 3b 0d 0a 0d |RocketOf|fset;...|
|000007f0| 0a 2f 2f 20 53 68 69 65 | 6c 64 20 65 66 66 65 63 |.// Shie|ld effec|
|00000800| 74 20 61 63 74 6f 72 73 | 0d 0a 76 61 72 09 63 6c |t actors|..var.cl|
|00000810| 61 73 73 3c 41 63 74 6f | 72 3e 09 47 65 6e 65 72 |ass<Acto|r>.Gener|
|00000820| 69 63 53 68 69 65 6c 64 | 45 66 66 65 63 74 5b 32 |icShield|Effect[2|
|00000830| 5d 3b 0d 0a 76 61 72 09 | 66 6c 6f 61 74 09 09 09 |];..var.|float...|
|00000840| 4e 65 78 74 53 68 69 65 | 6c 64 54 69 6d 65 3b 0d |NextShie|ldTime;.|
|00000850| 0a 0d 0a 2f 2f 20 54 61 | 72 67 65 74 20 6c 6f 63 |...// Ta|rget loc|
|00000860| 6b 69 6e 67 0d 0a 76 61 | 72 09 56 65 68 69 63 6c |king..va|r.Vehicl|
|00000870| 65 09 09 43 75 72 72 65 | 6e 74 54 61 72 67 65 74 |e..Curre|ntTarget|
|00000880| 3b 0d 0a 76 61 72 09 66 | 6c 6f 61 74 09 09 4d 61 |;..var.f|loat..Ma|
|00000890| 78 54 61 72 67 65 74 69 | 6e 67 52 61 6e 67 65 3b |xTargeti|ngRange;|
|000008a0| 0d 0a 76 61 72 09 66 6c | 6f 61 74 09 09 4c 61 73 |..var.fl|oat..Las|
|000008b0| 74 41 75 74 6f 54 61 72 | 67 65 74 54 69 6d 65 3b |tAutoTar|getTime;|
|000008c0| 0d 0a 76 61 72 09 56 65 | 63 74 6f 72 09 09 43 72 |..var.Ve|ctor..Cr|
|000008d0| 6f 73 73 68 61 69 72 50 | 6f 73 3b 0d 0a 76 61 72 |osshairP|os;..var|
|000008e0| 20 53 6f 75 6e 64 09 09 | 54 61 72 67 65 74 41 63 | Sound..|TargetAc|
|000008f0| 71 75 69 72 65 64 53 6f | 75 6e 64 3b 0d 0a 0d 0a |quiredSo|und;....|
|00000900| 76 61 72 20 54 65 78 74 | 75 72 65 09 09 57 65 61 |var Text|ure..Wea|
|00000910| 70 6f 6e 49 6e 66 6f 54 | 65 78 74 75 72 65 2c 20 |ponInfoT|exture, |
|00000920| 53 70 65 65 64 49 6e 66 | 6f 54 65 78 74 75 72 65 |SpeedInf|oTexture|
|00000930| 3b 0d 0a 0d 0a 76 61 72 | 20 53 6f 75 6e 64 09 52 |;....var| Sound.R|
|00000940| 6f 63 6b 65 74 4c 6f 61 | 64 65 64 53 6f 75 6e 64 |ocketLoa|dedSound|
|00000950| 3b 0d 0a 0d 0a 72 65 70 | 6c 69 63 61 74 69 6f 6e |;....rep|lication|
|00000960| 0d 0a 7b 0d 0a 09 72 65 | 6c 69 61 62 6c 65 20 69 |..{...re|liable i|
|00000970| 66 20 28 20 62 4e 65 74 | 44 69 72 74 79 20 26 26 |f ( bNet|Dirty &&|
|00000980| 20 62 4e 65 74 4f 77 6e | 65 72 20 26 26 20 52 6f | bNetOwn|er && Ro|
|00000990| 6c 65 3d 3d 52 4f 4c 45 | 5f 41 75 74 68 6f 72 69 |le==ROLE|_Authori|
|000009a0| 74 79 20 29 0d 0a 09 09 | 43 75 72 72 65 6e 74 54 |ty )....|CurrentT|
|000009b0| 61 72 67 65 74 3b 0d 0a | 0d 0a 09 72 65 6c 69 61 |arget;..|...relia|
|000009c0| 62 6c 65 20 69 66 20 28 | 20 52 6f 6c 65 20 3c 20 |ble if (| Role < |
|000009d0| 52 4f 4c 45 5f 41 75 74 | 68 6f 72 69 74 79 20 29 |ROLE_Aut|hority )|
|000009e0| 0d 0a 09 09 53 65 72 76 | 65 72 50 72 65 76 54 61 |....Serv|erPrevTa|
|000009f0| 72 67 65 74 2c 20 53 65 | 72 76 65 72 4e 65 78 74 |rget, Se|rverNext|
|00000a00| 54 61 72 67 65 74 2c 20 | 53 65 72 76 65 72 53 65 |Target, |ServerSe|
|00000a10| 74 54 61 72 67 65 74 3b | 0d 0a 7d 0d 0a 0d 0a 0d |tTarget;|..}.....|
|00000a20| 0a 66 75 6e 63 74 69 6f | 6e 20 42 6c 6f 77 55 70 |.functio|n BlowUp|
|00000a30| 28 20 76 65 63 74 6f 72 | 20 48 69 74 4e 6f 72 6d |( vector| HitNorm|
|00000a40| 61 6c 20 29 3b 09 09 2f | 2f 20 42 6c 6f 77 20 75 |al );../|/ Blow u|
|00000a50| 70 20 73 70 61 63 65 20 | 73 68 69 70 0d 0a 0d 0a |p space |ship....|
|00000a60| 73 69 6d 75 6c 61 74 65 | 64 20 66 75 6e 63 74 69 |simulate|d functi|
|00000a70| 6f 6e 20 50 6f 73 74 4e | 65 74 42 65 67 69 6e 50 |on PostN|etBeginP|
|00000a80| 6c 61 79 28 29 0d 0a 7b | 0d 0a 09 73 75 70 65 72 |lay()..{|...super|
|00000a90| 2e 50 6f 73 74 4e 65 74 | 42 65 67 69 6e 50 6c 61 |.PostNet|BeginPla|
|00000aa0| 79 28 29 3b 0d 0a 0d 0a | 09 62 50 6f 73 74 4e 65 |y();....|.bPostNe|
|00000ab0| 74 43 61 6c 6c 65 64 20 | 3d 20 74 72 75 65 3b 0d |tCalled |= true;.|
|00000ac0| 0a 09 50 6c 61 79 54 61 | 6b 65 4f 66 66 28 29 3b |..PlayTa|keOff();|
|00000ad0| 0d 0a 0d 0a 09 69 66 20 | 28 20 41 53 47 61 6d 65 |.....if |( ASGame|
|00000ae0| 49 6e 66 6f 28 4c 65 76 | 65 6c 2e 47 61 6d 65 29 |Info(Lev|el.Game)|
|00000af0| 20 21 3d 20 4e 6f 6e 65 | 20 29 0d 0a 09 09 62 54 | != None| )....bT|
|00000b00| 68 75 6d 70 65 64 20 3d | 20 41 53 47 61 6d 65 49 |humped =| ASGameI|
|00000b10| 6e 66 6f 28 4c 65 76 65 | 6c 2e 47 61 6d 65 29 2e |nfo(Leve|l.Game).|
|00000b20| 44 69 76 65 72 74 53 70 | 61 63 65 46 69 67 68 74 |DivertSp|aceFight|
|00000b30| 65 72 28 29 3b 0d 0a 7d | 0d 0a 0d 0a 73 69 6d 75 |er();..}|....simu|
|00000b40| 6c 61 74 65 64 20 66 75 | 6e 63 74 69 6f 6e 20 50 |lated fu|nction P|
|00000b50| 6c 61 79 54 61 6b 65 4f | 66 66 28 29 3b 0d 0a 0d |layTakeO|ff();...|
|00000b60| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 65 76 65 |...simul|ated eve|
|00000b70| 6e 74 20 54 65 61 6d 43 | 68 61 6e 67 65 64 28 29 |nt TeamC|hanged()|
|00000b80| 0d 0a 7b 0d 0a 09 2f 2f | 20 41 64 64 20 54 72 61 |..{...//| Add Tra|
|00000b90| 69 6c 20 46 58 0d 0a 09 | 69 66 20 28 20 4c 65 76 |il FX...|if ( Lev|
|00000ba0| 65 6c 2e 4e 65 74 4d 6f | 64 65 20 21 3d 20 4e 4d |el.NetMo|de != NM|
|00000bb0| 5f 44 65 64 69 63 61 74 | 65 64 53 65 72 76 65 72 |_Dedicat|edServer|
|00000bc0| 20 29 0d 0a 09 7b 0d 0a | 09 09 53 65 74 54 72 61 | )...{..|..SetTra|
|00000bd0| 69 6c 46 58 28 29 3b 0d | 0a 09 09 41 64 6a 75 73 |ilFX();.|...Adjus|
|00000be0| 74 46 58 28 29 3b 0d 0a | 09 7d 0d 0a 7d 0d 0a 0d |tFX();..|.}..}...|
|00000bf0| 0a 73 69 6d 75 6c 61 74 | 65 64 20 66 75 6e 63 74 |.simulat|ed funct|
|00000c00| 69 6f 6e 20 53 65 74 54 | 72 61 69 6c 46 58 28 29 |ion SetT|railFX()|
|00000c10| 3b 0d 0a 0d 0a 73 69 6d | 75 6c 61 74 65 64 20 66 |;....sim|ulated f|
|00000c20| 75 6e 63 74 69 6f 6e 20 | 44 65 73 74 72 6f 79 65 |unction |Destroye|
|00000c30| 64 28 29 0d 0a 7b 0d 0a | 09 69 66 20 28 20 54 72 |d()..{..|.if ( Tr|
|00000c40| 61 69 6c 45 6d 69 74 74 | 65 72 20 21 3d 20 4e 6f |ailEmitt|er != No|
|00000c50| 6e 65 20 29 0d 0a 09 09 | 54 72 61 69 6c 45 6d 69 |ne )....|TrailEmi|
|00000c60| 74 74 65 72 2e 44 65 73 | 74 72 6f 79 28 29 3b 0d |tter.Des|troy();.|
|00000c70| 0a 0d 0a 09 69 66 20 28 | 20 53 6d 6f 6b 65 54 72 |....if (| SmokeTr|
|00000c80| 61 69 6c 20 21 3d 20 4e | 6f 6e 65 20 29 0d 0a 09 |ail != N|one )...|
|00000c90| 09 53 6d 6f 6b 65 54 72 | 61 69 6c 2e 44 65 73 74 |.SmokeTr|ail.Dest|
|00000ca0| 72 6f 79 28 29 3b 0d 0a | 0d 0a 09 73 75 70 65 72 |roy();..|...super|
|00000cb0| 2e 44 65 73 74 72 6f 79 | 65 64 28 29 3b 0d 0a 7d |.Destroy|ed();..}|
|00000cc0| 0d 0a 0d 0a 0d 0a 66 75 | 6e 63 74 69 6f 6e 20 50 |......fu|nction P|
|00000cd0| 6f 73 73 65 73 73 65 64 | 42 79 28 43 6f 6e 74 72 |ossessed|By(Contr|
|00000ce0| 6f 6c 6c 65 72 20 43 29 | 0d 0a 7b 0d 0a 09 73 75 |oller C)|..{...su|
|00000cf0| 70 65 72 2e 50 6f 73 73 | 65 73 73 65 64 42 79 28 |per.Poss|essedBy(|
|00000d00| 43 29 3b 0d 0a 0d 0a 09 | 2f 2f 20 44 6f 6e 27 74 |C);.....|// Don't|
|00000d10| 20 73 74 61 72 74 20 61 | 74 20 66 75 6c 6c 20 73 | start a|t full s|
|00000d20| 70 65 65 64 0d 0a 09 56 | 65 6c 6f 63 69 74 79 20 |peed...V|elocity |
|00000d30| 3d 20 45 6e 67 69 6e 65 | 4d 69 6e 56 65 6c 6f 63 |= Engine|MinVeloc|
|00000d40| 69 74 79 20 2a 20 56 65 | 63 74 6f 72 28 52 6f 74 |ity * Ve|ctor(Rot|
|00000d50| 61 74 69 6f 6e 29 3b 0d | 0a 20 20 20 20 41 63 63 |ation);.|. Acc|
|00000d60| 65 6c 65 72 61 74 69 6f | 6e 20 3d 20 56 65 6c 6f |eleratio|n = Velo|
|00000d70| 63 69 74 79 3b 0d 0a 7d | 0d 0a 0d 0a 66 75 6e 63 |city;..}|....func|
|00000d80| 74 69 6f 6e 20 76 65 63 | 74 6f 72 20 47 65 74 42 |tion vec|tor GetB|
|00000d90| 6f 74 45 72 72 6f 72 28 | 76 65 63 74 6f 72 20 53 |otError(|vector S|
|00000da0| 74 61 72 74 4c 6f 63 61 | 74 69 6f 6e 29 0d 0a 7b |tartLoca|tion)..{|
|00000db0| 0d 0a 09 6c 6f 63 61 6c | 20 76 65 63 74 6f 72 20 |...local| vector |
|00000dc0| 45 72 72 6f 72 44 69 72 | 2c 20 56 65 6c 44 69 72 |ErrorDir|, VelDir|
|00000dd0| 3b 0d 0a 0d 0a 09 43 6f | 6e 74 72 6f 6c 6c 65 72 |;.....Co|ntroller|
|00000de0| 2e 53 68 6f 74 54 61 72 | 67 65 74 20 3d 20 50 61 |.ShotTar|get = Pa|
|00000df0| 77 6e 28 43 6f 6e 74 72 | 6f 6c 6c 65 72 2e 54 61 |wn(Contr|oller.Ta|
|00000e00| 72 67 65 74 29 3b 0d 0a | 09 45 72 72 6f 72 44 69 |rget);..|.ErrorDi|
|00000e10| 72 20 3d 20 4e 6f 72 6d | 61 6c 28 28 43 6f 6e 74 |r = Norm|al((Cont|
|00000e20| 72 6f 6c 6c 65 72 2e 54 | 61 72 67 65 74 2e 4c 6f |roller.T|arget.Lo|
|00000e30| 63 61 74 69 6f 6e 20 2d | 20 4c 6f 63 61 74 69 6f |cation -| Locatio|
|00000e40| 6e 29 20 43 72 6f 73 73 | 20 76 65 63 74 28 30 2c |n) Cross| vect(0,|
|00000e50| 30 2c 31 29 29 3b 0d 0a | 09 69 66 20 28 20 43 6f |0,1));..|.if ( Co|
|00000e60| 6e 74 72 6f 6c 6c 65 72 | 2e 54 61 72 67 65 74 20 |ntroller|.Target |
|00000e70| 21 3d 20 4f 6c 64 54 61 | 72 67 65 74 20 29 0d 0a |!= OldTa|rget )..|
|00000e80| 09 7b 0d 0a 09 09 42 6f | 74 45 72 72 6f 72 20 3d |.{....Bo|tError =|
|00000e90| 20 28 31 35 30 30 20 2d | 20 31 30 30 20 2a 20 4c | (1500 -| 100 * L|
|00000ea0| 65 76 65 6c 2e 47 61 6d | 65 2e 47 61 6d 65 44 69 |evel.Gam|e.GameDi|
|00000eb0| 66 66 69 63 75 6c 74 79 | 29 20 2a 20 45 72 72 6f |fficulty|) * Erro|
|00000ec0| 72 44 69 72 3b 0d 0a 09 | 09 4f 6c 64 54 61 72 67 |rDir;...|.OldTarg|
|00000ed0| 65 74 20 3d 20 43 6f 6e | 74 72 6f 6c 6c 65 72 2e |et = Con|troller.|
|00000ee0| 54 61 72 67 65 74 3b 0d | 0a 09 7d 0d 0a 09 56 65 |Target;.|..}...Ve|
|00000ef0| 6c 44 69 72 20 3d 20 4e | 6f 72 6d 61 6c 28 43 6f |lDir = N|ormal(Co|
|00000f00| 6e 74 72 6f 6c 6c 65 72 | 2e 54 61 72 67 65 74 2e |ntroller|.Target.|
|00000f10| 56 65 6c 6f 63 69 74 79 | 29 3b 0d 0a 09 42 6f 74 |Velocity|);...Bot|
|00000f20| 45 72 72 6f 72 20 2b 3d | 20 28 31 30 30 20 2d 20 |Error +=| (100 - |
|00000f30| 32 30 30 20 2a 46 52 61 | 6e 64 28 29 29 20 2a 20 |200 *FRa|nd()) * |
|00000f40| 28 45 72 72 6f 72 44 69 | 72 20 2b 20 56 65 6c 44 |(ErrorDi|r + VelD|
|00000f50| 69 72 29 3b 0d 0a 09 69 | 66 20 28 20 28 4c 65 76 |ir);...i|f ( (Lev|
|00000f60| 65 6c 2e 47 61 6d 65 2e | 47 61 6d 65 44 69 66 66 |el.Game.|GameDiff|
|00000f70| 69 63 75 6c 74 79 20 3c | 20 36 29 20 26 26 20 28 |iculty <| 6) && (|
|00000f80| 56 53 69 7a 65 28 42 6f | 74 45 72 72 6f 72 29 20 |VSize(Bo|tError) |
|00000f90| 3c 20 31 32 30 29 20 29 | 0d 0a 09 7b 0d 0a 09 09 |< 120) )|...{....|
|00000fa0| 69 66 20 28 20 28 42 6f | 74 45 72 72 6f 72 20 44 |if ( (Bo|tError D|
|00000fb0| 6f 74 20 56 65 6c 44 69 | 72 29 20 3c 20 30 20 29 |ot VelDi|r) < 0 )|
|00000fc0| 0d 0a 09 09 09 42 6f 74 | 45 72 72 6f 72 20 2b 3d |.....Bot|Error +=|
|00000fd0| 20 31 30 20 2a 20 56 65 | 6c 44 69 72 3b 0d 0a 09 | 10 * Ve|lDir;...|
|00000fe0| 09 65 6c 73 65 0d 0a 09 | 09 09 42 6f 74 45 72 72 |.else...|..BotErr|
|00000ff0| 6f 72 20 2d 3d 20 31 30 | 20 2a 20 56 65 6c 44 69 |or -= 10| * VelDi|
|00001000| 72 3b 0d 0a 09 7d 0d 0a | 09 69 66 20 28 20 28 50 |r;...}..|.if ( (P|
|00001010| 61 77 6e 28 4f 6c 64 54 | 61 72 67 65 74 29 20 21 |awn(OldT|arget) !|
|00001020| 3d 20 4e 6f 6e 65 29 20 | 26 26 20 50 61 77 6e 28 |= None) |&& Pawn(|
|00001030| 4f 6c 64 54 61 72 67 65 | 74 29 2e 62 53 74 61 74 |OldTarge|t).bStat|
|00001040| 69 6f 6e 61 72 79 20 29 | 0d 0a 09 09 42 6f 74 45 |ionary )|....BotE|
|00001050| 72 72 6f 72 20 2a 3d 20 | 30 2e 36 3b 0d 0a 09 42 |rror *= |0.6;...B|
|00001060| 6f 74 45 72 72 6f 72 20 | 3d 20 4e 6f 72 6d 61 6c |otError |= Normal|
|00001070| 28 42 6f 74 45 72 72 6f | 72 29 20 2a 20 46 4d 69 |(BotErro|r) * FMi|
|00001080| 6e 28 56 53 69 7a 65 28 | 42 6f 74 45 72 72 6f 72 |n(VSize(|BotError|
|00001090| 29 2c 20 46 4d 69 6e 28 | 31 35 30 30 20 2d 20 31 |), FMin(|1500 - 1|
|000010a0| 30 30 2a 4c 65 76 65 6c | 2e 47 61 6d 65 2e 47 61 |00*Level|.Game.Ga|
|000010b0| 6d 65 44 69 66 66 69 63 | 75 6c 74 79 2c 30 2e 32 |meDiffic|ulty,0.2|
|000010c0| 20 2a 20 56 53 69 7a 65 | 28 43 6f 6e 74 72 6f 6c | * VSize|(Control|
|000010d0| 6c 65 72 2e 54 61 72 67 | 65 74 2e 4c 6f 63 61 74 |ler.Targ|et.Locat|
|000010e0| 69 6f 6e 20 2d 20 53 74 | 61 72 74 4c 6f 63 61 74 |ion - St|artLocat|
|000010f0| 69 6f 6e 29 29 29 3b 0d | 0a 0d 0a 09 72 65 74 75 |ion)));.|....retu|
|00001100| 72 6e 20 42 6f 74 45 72 | 72 6f 72 3b 0d 0a 7d 0d |rn BotEr|ror;..}.|
|00001110| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 75 6e |...simul|ated fun|
|00001120| 63 74 69 6f 6e 20 43 6c | 69 65 6e 74 4b 44 72 69 |ction Cl|ientKDri|
|00001130| 76 65 72 45 6e 74 65 72 | 28 50 6c 61 79 65 72 43 |verEnter|(PlayerC|
|00001140| 6f 6e 74 72 6f 6c 6c 65 | 72 20 50 43 29 0d 0a 7b |ontrolle|r PC)..{|
|00001150| 0d 0a 09 73 75 70 65 72 | 2e 43 6c 69 65 6e 74 4b |...super|.ClientK|
|00001160| 44 72 69 76 65 72 45 6e | 74 65 72 28 20 50 43 20 |DriverEn|ter( PC |
|00001170| 29 3b 0d 0a 0d 0a 09 2f | 2f 20 44 6f 6e 27 74 20 |);...../|/ Don't |
|00001180| 73 74 61 72 74 20 61 74 | 20 66 75 6c 6c 20 73 70 |start at| full sp|
|00001190| 65 65 64 0d 0a 09 56 65 | 6c 6f 63 69 74 79 20 3d |eed...Ve|locity =|
|000011a0| 20 45 6e 67 69 6e 65 4d | 69 6e 56 65 6c 6f 63 69 | EngineM|inVeloci|
|000011b0| 74 79 20 2a 20 56 65 63 | 74 6f 72 28 52 6f 74 61 |ty * Vec|tor(Rota|
|000011c0| 74 69 6f 6e 29 3b 0d 0a | 20 20 20 20 41 63 63 65 |tion);..| Acce|
|000011d0| 6c 65 72 61 74 69 6f 6e | 20 3d 20 56 65 6c 6f 63 |leration| = Veloc|
|000011e0| 69 74 79 3b 0d 0a 7d 0d | 0a 0d 0a 2f 2f 20 43 61 |ity;..}.|...// Ca|
|000011f0| 6c 6c 65 64 20 66 72 6f | 6d 20 74 68 65 20 50 6c |lled fro|m the Pl|
|00001200| 61 79 65 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 20 77 |ayerCont|roller w|
|00001210| 68 65 6e 20 70 6c 61 79 | 65 72 20 77 61 6e 74 73 |hen play|er wants|
|00001220| 20 74 6f 20 67 65 74 20 | 6f 75 74 2e 0d 0a 66 75 | to get |out...fu|
|00001230| 6e 63 74 69 6f 6e 20 62 | 6f 6f 6c 20 4b 44 72 69 |nction b|ool KDri|
|00001240| 76 65 72 4c 65 61 76 65 | 28 20 62 6f 6f 6c 20 62 |verLeave|( bool b|
|00001250| 46 6f 72 63 65 4c 65 61 | 76 65 20 29 0d 0a 7b 0d |ForceLea|ve )..{.|
|00001260| 0a 09 69 66 20 28 20 62 | 46 6f 72 63 65 4c 65 61 |..if ( b|ForceLea|
|00001270| 76 65 20 29 09 2f 2f 20 | 48 61 63 6b 20 73 6f 20 |ve ).// |Hack so |
|00001280| 79 6f 75 20 63 61 6e 27 | 74 20 65 78 69 74 20 53 |you can'|t exit S|
|00001290| 70 61 63 65 46 69 67 68 | 74 65 72 73 20 77 69 74 |paceFigh|ters wit|
|000012a0| 68 20 74 68 65 20 22 55 | 73 65 22 20 4b 65 79 2e |h the "U|se" Key.|
|000012b0| 0d 0a 09 7b 0d 0a 09 09 | 69 66 20 28 20 73 75 70 |...{....|if ( sup|
|000012c0| 65 72 2e 4b 44 72 69 76 | 65 72 4c 65 61 76 65 28 |er.KDriv|erLeave(|
|000012d0| 20 62 46 6f 72 63 65 4c | 65 61 76 65 20 29 20 29 | bForceL|eave ) )|
|000012e0| 0d 0a 09 09 7b 0d 0a 09 | 09 09 69 66 20 28 20 21 |....{...|..if ( !|
|000012f0| 62 44 65 6c 65 74 65 4d | 65 20 26 26 20 21 49 73 |bDeleteM|e && !Is|
|00001300| 49 6e 53 74 61 74 65 28 | 27 44 79 69 6e 67 27 29 |InState(|'Dying')|
|00001310| 20 29 0d 0a 09 09 09 09 | 44 65 73 74 72 6f 79 28 | )......|Destroy(|
|00001320| 29 3b 0d 0a 09 09 7d 0d | 0a 09 09 65 6c 73 65 20 |);....}.|...else |
|00001330| 72 65 74 75 72 6e 20 66 | 61 6c 73 65 3b 0d 0a 09 |return f|alse;...|
|00001340| 7d 0d 0a 09 65 6c 73 65 | 0d 0a 09 7b 0d 0a 09 09 |}...else|...{....|
|00001350| 54 61 72 67 65 74 55 6e | 53 65 74 28 29 3b 0d 0a |TargetUn|Set();..|
|00001360| 09 09 72 65 74 75 72 6e | 20 66 61 6c 73 65 3b 0d |..return| false;.|
|00001370| 0a 09 7d 0d 0a 7d 0d 0a | 0d 0a 66 75 6e 63 74 69 |..}..}..|..functi|
|00001380| 6f 6e 20 44 72 69 76 65 | 72 44 69 65 64 28 29 0d |on Drive|rDied().|
|00001390| 0a 7b 0d 0a 09 54 61 6b | 65 44 61 6d 61 67 65 28 |.{...Tak|eDamage(|
|000013a0| 64 65 66 61 75 6c 74 2e | 48 65 61 6c 74 68 2a 32 |default.|Health*2|
|000013b0| 2c 20 53 65 6c 66 2c 20 | 4c 6f 63 61 74 69 6f 6e |, Self, |Location|
|000013c0| 2c 20 76 65 63 74 28 30 | 2c 30 2c 30 29 2c 20 4e |, vect(0|,0,0), N|
|000013d0| 6f 6e 65 29 3b 0d 0a 7d | 0d 0a 0d 0a 2f 2f 20 72 |one);..}|....// r|
|000013e0| 65 74 75 72 6e 20 66 61 | 6c 73 65 20 69 66 20 6f |eturn fa|lse if o|
|000013f0| 75 74 20 6f 66 20 72 61 | 6e 67 65 2c 20 63 61 6e |ut of ra|nge, can|
|00001400| 27 74 20 73 65 65 20 74 | 61 72 67 65 74 2c 20 65 |'t see t|arget, e|
|00001410| 74 63 2e 0d 0a 66 75 6e | 63 74 69 6f 6e 20 62 6f |tc...fun|ction bo|
|00001420| 6f 6c 20 43 61 6e 41 74 | 74 61 63 6b 28 41 63 74 |ol CanAt|tack(Act|
|00001430| 6f 72 20 4f 74 68 65 72 | 29 0d 0a 7b 0d 0a 20 20 |or Other|)..{.. |
|00001440| 20 20 2f 2f 20 63 68 65 | 63 6b 20 74 68 61 74 20 | // che|ck that |
|00001450| 63 61 6e 20 73 65 65 20 | 74 61 72 67 65 74 0d 0a |can see |target..|
|00001460| 20 20 20 20 69 66 20 28 | 20 43 6f 6e 74 72 6f 6c | if (| Control|
|00001470| 6c 65 72 20 21 3d 20 4e | 6f 6e 65 20 29 0d 0a 09 |ler != N|one )...|
|00001480| 09 72 65 74 75 72 6e 20 | 43 6f 6e 74 72 6f 6c 6c |.return |Controll|
|00001490| 65 72 2e 4c 69 6e 65 4f | 66 53 69 67 68 74 54 6f |er.LineO|fSightTo|
|000014a0| 28 4f 74 68 65 72 29 3b | 0d 0a 20 20 20 20 72 65 |(Other);|.. re|
|000014b0| 74 75 72 6e 20 66 61 6c | 73 65 3b 0d 0a 7d 0d 0a |turn fal|se;..}..|
|000014c0| 0d 0a 2f 2f 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..//====|========|
|000014d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000014e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000014f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001500| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001510| 3d 0d 0a 2f 2f 20 4d 6f | 76 65 6d 65 6e 74 0d 0a |=..// Mo|vement..|
|00001520| 2f 2f 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |//======|========|
|00001530| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001540| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001550| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001560| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|00001570| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 75 6e |...simul|ated fun|
|00001580| 63 74 69 6f 6e 20 55 70 | 64 61 74 65 52 6f 63 6b |ction Up|dateRock|
|00001590| 65 74 41 63 63 65 6c 65 | 72 61 74 69 6f 6e 28 66 |etAccele|ration(f|
|000015a0| 6c 6f 61 74 20 44 65 6c | 74 61 54 69 6d 65 2c 20 |loat Del|taTime, |
|000015b0| 66 6c 6f 61 74 20 59 61 | 77 43 68 61 6e 67 65 2c |float Ya|wChange,|
|000015c0| 20 66 6c 6f 61 74 20 50 | 69 74 63 68 43 68 61 6e | float P|itchChan|
|000015d0| 67 65 29 0d 0a 7b 0d 0a | 09 6c 6f 63 61 6c 20 76 |ge)..{..|.local v|
|000015e0| 65 63 74 6f 72 09 58 2c | 59 2c 5a 3b 0d 0a 09 6c |ector.X,|Y,Z;...l|
|000015f0| 6f 63 61 6c 20 66 6c 6f | 61 74 09 09 43 75 72 72 |ocal flo|at..Curr|
|00001600| 65 6e 74 53 70 65 65 64 | 3b 0d 0a 09 6c 6f 63 61 |entSpeed|;...loca|
|00001610| 6c 20 66 6c 6f 61 74 09 | 09 45 6e 67 69 6e 65 41 |l float.|.EngineA|
|00001620| 63 63 65 6c 3b 0d 0a 09 | 6c 6f 63 61 6c 20 66 6c |ccel;...|local fl|
|00001630| 6f 61 74 09 09 52 6f 74 | 61 74 69 6f 6e 53 6d 6f |oat..Rot|ationSmo|
|00001640| 6f 74 68 46 61 63 74 6f | 72 3b 0d 0a 09 6c 6f 63 |othFacto|r;...loc|
|00001650| 61 6c 20 66 6c 6f 61 74 | 09 09 52 6f 6c 6c 43 68 |al float|..RollCh|
|00001660| 61 6e 67 65 3b 0d 0a 09 | 6c 6f 63 61 6c 20 52 6f |ange;...|local Ro|
|00001670| 74 61 74 6f 72 09 4e 65 | 77 52 6f 74 61 74 69 6f |tator.Ne|wRotatio|
|00001680| 6e 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 21 62 50 6f |n;.....i|f ( !bPo|
|00001690| 73 74 4e 65 74 43 61 6c | 6c 65 64 20 7c 7c 20 43 |stNetCal|led || C|
|000016a0| 6f 6e 74 72 6f 6c 6c 65 | 72 20 3d 3d 20 4e 6f 6e |ontrolle|r == Non|
|000016b0| 65 20 29 0d 0a 09 09 72 | 65 74 75 72 6e 3b 0d 0a |e )....r|eturn;..|
|000016c0| 0d 0a 09 69 66 20 28 20 | 21 62 49 6e 69 74 69 61 |...if ( |!bInitia|
|000016d0| 6c 69 7a 65 64 20 20 29 | 0d 0a 09 7b 0d 0a 09 09 |lized )|...{....|
|000016e0| 2f 2f 20 4c 61 75 72 65 | 6e 74 20 2d 2d 20 56 65 |// Laure|nt -- Ve|
|000016f0| 6c 6f 63 69 74 79 20 4f | 76 65 72 72 69 64 65 0d |locity O|verride.|
|00001700| 0a 09 09 2f 2f 20 57 68 | 65 6e 20 50 6c 61 79 65 |...// Wh|en Playe|
|00001710| 72 20 53 70 61 77 6e 73 | 20 77 69 74 68 20 74 68 |r Spawns| with th|
|00001720| 65 20 73 70 61 63 65 73 | 68 69 70 20 61 73 20 50 |e spaces|hip as P|
|00001730| 61 77 6e 2c 20 76 65 6c | 6f 63 69 74 79 20 69 73 |awn, vel|ocity is|
|00001740| 20 72 65 73 65 74 20 61 | 74 20 73 74 61 72 74 20 | reset a|t start |
|00001750| 6d 61 74 63 68 0d 0a 09 | 09 2f 2f 20 73 69 6e 63 |match...|.// sinc|
|00001760| 65 20 52 6f 74 61 74 69 | 6f 6e 20 69 73 20 6f 76 |e Rotati|on is ov|
|00001770| 65 72 77 72 69 74 74 65 | 6e 20 6c 61 74 65 72 20 |erwritte|n later |
|00001780| 62 79 20 52 6f 74 61 74 | 6f 72 28 56 65 6c 6f 63 |by Rotat|or(Veloc|
|00001790| 69 74 79 29 2c 20 69 74 | 20 67 65 74 73 20 72 65 |ity), it| gets re|
|000017a0| 73 65 74 20 74 6f 20 52 | 6f 74 61 74 69 6f 6e 28 |set to R|otation(|
|000017b0| 30 2c 30 2c 30 29 0d 0a | 09 09 2f 2f 20 41 6e 64 |0,0,0)..|..// And|
|000017c0| 20 74 68 65 72 65 66 6f | 72 65 20 6e 6f 74 20 75 | therefo|re not u|
|000017d0| 73 69 6e 67 20 74 68 65 | 20 6f 6e 65 20 73 65 74 |sing the| one set|
|000017e0| 20 69 6e 20 50 6c 61 79 | 65 72 53 74 61 72 74 2e | in Play|erStart.|
|000017f0| 52 6f 74 61 74 69 6f 6e | 0d 0a 09 09 41 63 63 65 |Rotation|....Acce|
|00001800| 6c 65 72 61 74 69 6f 6e | 20 3d 20 45 6e 67 69 6e |leration| = Engin|
|00001810| 65 4d 69 6e 56 65 6c 6f | 63 69 74 79 20 2a 20 56 |eMinVelo|city * V|
|00001820| 65 63 74 6f 72 28 52 6f | 74 61 74 69 6f 6e 29 3b |ector(Ro|tation);|
|00001830| 0d 0a 09 09 53 70 61 63 | 65 46 69 67 68 74 65 72 |....Spac|eFighter|
|00001840| 52 6f 74 61 74 69 6f 6e | 20 3d 20 51 75 61 74 46 |Rotation| = QuatF|
|00001850| 72 6f 6d 52 6f 74 61 74 | 6f 72 28 20 52 6f 74 61 |romRotat|or( Rota|
|00001860| 74 69 6f 6e 20 29 3b 0d | 0a 09 09 62 49 6e 69 74 |tion );.|...bInit|
|00001870| 69 61 6c 69 7a 65 64 20 | 3d 20 74 72 75 65 3b 0d |ialized |= true;.|
|00001880| 0a 09 7d 0d 0a 0d 0a 09 | 2f 2f 20 4f 6e 6c 79 20 |..}.....|// Only |
|00001890| 61 6c 6c 6f 77 20 73 70 | 61 63 65 20 66 69 67 68 |allow sp|ace figh|
|000018a0| 74 65 72 20 74 6f 20 63 | 68 61 6e 67 65 20 67 65 |ter to c|hange ge|
|000018b0| 61 72 20 6f 6e 63 65 20 | 6c 61 6e 64 69 6e 67 20 |ar once |landing |
|000018c0| 67 65 61 72 20 69 73 20 | 75 70 2e 0d 0a 09 2f 2f |gear is |up....//|
|000018d0| 20 28 73 6d 61 6c 6c 20 | 68 61 63 6b 20 66 6f 72 | (small |hack for|
|000018e0| 20 66 69 6e 73 20 61 6e | 69 6d 61 74 69 6f 6e 73 | fins an|imations|
|000018f0| 29 0d 0a 09 69 66 20 28 | 20 62 47 65 61 72 55 70 |)...if (| bGearUp|
|00001900| 20 29 0d 0a 09 09 44 65 | 73 69 72 65 64 56 65 6c | )....De|siredVel|
|00001910| 6f 63 69 74 79 09 3d 20 | 46 43 6c 61 6d 70 28 20 |ocity.= |FClamp( |
|00001920| 44 65 73 69 72 65 64 56 | 65 6c 6f 63 69 74 79 2b |DesiredV|elocity+|
|00001930| 50 6c 61 79 65 72 43 6f | 6e 74 72 6f 6c 6c 65 72 |PlayerCo|ntroller|
|00001940| 28 43 6f 6e 74 72 6f 6c | 6c 65 72 29 2e 61 46 6f |(Control|ler).aFo|
|00001950| 72 77 61 72 64 2a 44 65 | 6c 74 61 54 69 6d 65 2f |rward*De|ltaTime/|
|00001960| 31 35 2e 66 2c 0d 0a 09 | 09 09 09 09 09 09 09 45 |15.f,...|.......E|
|00001970| 6e 67 69 6e 65 4d 69 6e | 56 65 6c 6f 63 69 74 79 |ngineMin|Velocity|
|00001980| 2c 20 31 30 30 30 2e 66 | 29 3b 0d 0a 09 65 6c 73 |, 1000.f|);...els|
|00001990| 65 0d 0a 09 09 44 65 73 | 69 72 65 64 56 65 6c 6f |e....Des|iredVelo|
|000019a0| 63 69 74 79 09 3d 20 45 | 6e 67 69 6e 65 4d 69 6e |city.= E|ngineMin|
|000019b0| 56 65 6c 6f 63 69 74 79 | 3b 0d 0a 0d 0a 09 43 75 |Velocity|;.....Cu|
|000019c0| 72 72 65 6e 74 53 70 65 | 65 64 09 3d 20 46 43 6c |rrentSpe|ed.= FCl|
|000019d0| 61 6d 70 28 20 28 56 65 | 6c 6f 63 69 74 79 20 44 |amp( (Ve|locity D|
|000019e0| 6f 74 20 56 65 63 74 6f | 72 28 52 6f 74 61 74 69 |ot Vecto|r(Rotati|
|000019f0| 6f 6e 29 29 20 2a 20 31 | 30 30 30 2e 66 20 2f 20 |on)) * 1|000.f / |
|00001a00| 41 69 72 53 70 65 65 64 | 2c 20 30 2e 66 2c 20 31 |AirSpeed|, 0.f, 1|
|00001a10| 30 30 30 2e 66 29 3b 0d | 0a 09 45 6e 67 69 6e 65 |000.f);.|..Engine|
|00001a20| 41 63 63 65 6c 09 09 3d | 20 28 44 65 73 69 72 65 |Accel..=| (Desire|
|00001a30| 64 56 65 6c 6f 63 69 74 | 79 20 2d 20 43 75 72 72 |dVelocit|y - Curr|
|00001a40| 65 6e 74 53 70 65 65 64 | 29 20 2a 20 31 30 30 2e |entSpeed|) * 100.|
|00001a50| 66 3b 0d 0a 0d 0a 09 52 | 6f 74 61 74 69 6f 6e 53 |f;.....R|otationS|
|00001a60| 6d 6f 6f 74 68 46 61 63 | 74 6f 72 20 3d 20 46 43 |moothFac|tor = FC|
|00001a70| 6c 61 6d 70 28 31 2e 66 | 20 2d 20 52 6f 74 61 74 |lamp(1.f| - Rotat|
|00001a80| 69 6f 6e 49 6e 65 72 74 | 69 61 20 2a 20 44 65 6c |ionInert|ia * Del|
|00001a90| 74 61 54 69 6d 65 2c 20 | 30 2e 66 2c 20 31 2e 66 |taTime, |0.f, 1.f|
|00001aa0| 29 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 50 6c 61 79 |);.....i|f ( Play|
|00001ab0| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 28 43 6f 6e |erContro|ller(Con|
|00001ac0| 74 72 6f 6c 6c 65 72 29 | 2e 62 44 75 63 6b 20 3e |troller)|.bDuck >|
|00001ad0| 20 30 20 26 26 20 41 62 | 73 28 52 6f 74 61 74 69 | 0 && Ab|s(Rotati|
|00001ae0| 6f 6e 2e 52 6f 6c 6c 29 | 20 3e 20 35 30 30 20 29 |on.Roll)| > 500 )|
|00001af0| 0d 0a 09 7b 0d 0a 09 09 | 2f 2f 20 41 75 74 6f 20 |...{....|// Auto |
|00001b00| 43 6f 72 72 65 63 74 20 | 52 6f 6c 6c 0d 0a 09 09 |Correct |Roll....|
|00001b10| 69 66 20 28 20 52 6f 74 | 61 74 69 6f 6e 2e 52 6f |if ( Rot|ation.Ro|
|00001b20| 6c 6c 20 3c 20 30 20 29 | 0d 0a 09 09 09 52 6f 6c |ll < 0 )|.....Rol|
|00001b30| 6c 43 68 61 6e 67 65 20 | 3d 20 52 6f 6c 6c 41 75 |lChange |= RollAu|
|00001b40| 74 6f 43 6f 72 72 65 63 | 74 53 70 65 65 64 3b 0d |toCorrec|tSpeed;.|
|00001b50| 0a 09 09 65 6c 73 65 0d | 0a 09 09 09 52 6f 6c 6c |...else.|....Roll|
|00001b60| 43 68 61 6e 67 65 20 3d | 20 2d 52 6f 6c 6c 41 75 |Change =| -RollAu|
|00001b70| 74 6f 43 6f 72 72 65 63 | 74 53 70 65 65 64 3b 0d |toCorrec|tSpeed;.|
|00001b80| 0a 09 7d 0d 0a 20 20 09 | 65 6c 73 65 20 69 66 20 |..}.. .|else if |
|00001b90| 28 20 50 6c 61 79 65 72 | 43 6f 6e 74 72 6f 6c 6c |( Player|Controll|
|00001ba0| 65 72 28 43 6f 6e 74 72 | 6f 6c 6c 65 72 29 2e 61 |er(Contr|oller).a|
|00001bb0| 55 70 20 3e 20 30 20 29 | 20 2f 2f 20 52 6f 6c 6c |Up > 0 )| // Roll|
|00001bc0| 69 6e 67 0d 0a 20 20 09 | 09 52 6f 6c 6c 43 68 61 |ing.. .|.RollCha|
|00001bd0| 6e 67 65 20 3d 20 50 6c | 61 79 65 72 43 6f 6e 74 |nge = Pl|ayerCont|
|00001be0| 72 6f 6c 6c 65 72 28 43 | 6f 6e 74 72 6f 6c 6c 65 |roller(C|ontrolle|
|00001bf0| 72 29 2e 61 53 74 72 61 | 66 65 20 2a 20 30 2e 36 |r).aStra|fe * 0.6|
|00001c00| 36 3b 0d 0a 0d 0a 09 2f | 2f 20 52 6f 74 61 74 69 |6;...../|/ Rotati|
|00001c10| 6f 6e 20 41 63 63 65 6c | 65 72 61 74 69 6f 6e 0d |on Accel|eration.|
|00001c20| 0a 09 59 61 77 41 63 63 | 65 6c 09 3d 20 52 6f 74 |..YawAcc|el.= Rot|
|00001c30| 61 74 69 6f 6e 53 6d 6f | 6f 74 68 46 61 63 74 6f |ationSmo|othFacto|
|00001c40| 72 2a 59 61 77 41 63 63 | 65 6c 20 20 20 2b 20 44 |r*YawAcc|el + D|
|00001c50| 65 6c 74 61 54 69 6d 65 | 2a 56 65 68 69 63 6c 65 |eltaTime|*Vehicle|
|00001c60| 52 6f 74 61 74 69 6f 6e | 53 70 65 65 64 2a 59 61 |Rotation|Speed*Ya|
|00001c70| 77 43 68 61 6e 67 65 3b | 0d 0a 09 50 69 74 63 68 |wChange;|...Pitch|
|00001c80| 41 63 63 65 6c 09 3d 20 | 52 6f 74 61 74 69 6f 6e |Accel.= |Rotation|
|00001c90| 53 6d 6f 6f 74 68 46 61 | 63 74 6f 72 2a 50 69 74 |SmoothFa|ctor*Pit|
|00001ca0| 63 68 41 63 63 65 6c 20 | 2b 20 44 65 6c 74 61 54 |chAccel |+ DeltaT|
|00001cb0| 69 6d 65 2a 56 65 68 69 | 63 6c 65 52 6f 74 61 74 |ime*Vehi|cleRotat|
|00001cc0| 69 6f 6e 53 70 65 65 64 | 2a 50 69 74 63 68 43 68 |ionSpeed|*PitchCh|
|00001cd0| 61 6e 67 65 3b 0d 0a 09 | 52 6f 6c 6c 41 63 63 65 |ange;...|RollAcce|
|00001ce0| 6c 09 3d 20 52 6f 74 61 | 74 69 6f 6e 53 6d 6f 6f |l.= Rota|tionSmoo|
|00001cf0| 74 68 46 61 63 74 6f 72 | 2a 52 6f 6c 6c 41 63 63 |thFactor|*RollAcc|
|00001d00| 65 6c 20 20 2b 20 44 65 | 6c 74 61 54 69 6d 65 2a |el + De|ltaTime*|
|00001d10| 56 65 68 69 63 6c 65 52 | 6f 74 61 74 69 6f 6e 53 |VehicleR|otationS|
|00001d20| 70 65 65 64 2a 52 6f 6c | 6c 43 68 61 6e 67 65 3b |peed*Rol|lChange;|
|00001d30| 0d 0a 0d 0a 09 59 61 77 | 41 63 63 65 6c 09 3d 20 |.....Yaw|Accel.= |
|00001d40| 46 43 6c 61 6d 70 28 20 | 59 61 77 41 63 63 65 6c |FClamp( |YawAccel|
|00001d50| 2c 20 2d 41 69 72 53 70 | 65 65 64 2c 20 41 69 72 |, -AirSp|eed, Air|
|00001d60| 53 70 65 65 64 20 29 3b | 0d 0a 09 50 69 74 63 68 |Speed );|...Pitch|
|00001d70| 41 63 63 65 6c 09 3d 20 | 46 43 6c 61 6d 70 28 20 |Accel.= |FClamp( |
|00001d80| 50 69 74 63 68 41 63 63 | 65 6c 2c 20 2d 41 69 72 |PitchAcc|el, -Air|
|00001d90| 53 70 65 65 64 2c 20 41 | 69 72 53 70 65 65 64 20 |Speed, A|irSpeed |
|00001da0| 29 3b 0d 0a 09 52 6f 6c | 6c 41 63 63 65 6c 09 3d |);...Rol|lAccel.=|
|00001db0| 20 46 43 6c 61 6d 70 28 | 20 52 6f 6c 6c 41 63 63 | FClamp(| RollAcc|
|00001dc0| 65 6c 2c 20 2d 41 69 72 | 53 70 65 65 64 2c 20 41 |el, -Air|Speed, A|
|00001dd0| 69 72 53 70 65 65 64 20 | 29 3b 0d 0a 0d 0a 09 2f |irSpeed |);...../|
|00001de0| 2f 20 50 65 72 66 6f 72 | 6d 20 6e 65 77 20 72 6f |/ Perfor|m new ro|
|00001df0| 74 61 74 69 6f 6e 0d 0a | 09 47 65 74 41 78 65 73 |tation..|.GetAxes|
|00001e00| 28 20 51 75 61 74 54 6f | 52 6f 74 61 74 6f 72 28 |( QuatTo|Rotator(|
|00001e10| 53 70 61 63 65 46 69 67 | 68 74 65 72 52 6f 74 61 |SpaceFig|hterRota|
|00001e20| 74 69 6f 6e 29 2c 20 58 | 2c 20 59 2c 20 5a 20 29 |tion), X|, Y, Z )|
|00001e30| 3b 0d 0a 09 53 70 61 63 | 65 46 69 67 68 74 65 72 |;...Spac|eFighter|
|00001e40| 52 6f 74 61 74 69 6f 6e | 20 3d 20 51 75 61 74 50 |Rotation| = QuatP|
|00001e50| 72 6f 64 75 63 74 28 53 | 70 61 63 65 46 69 67 68 |roduct(S|paceFigh|
|00001e60| 74 65 72 52 6f 74 61 74 | 69 6f 6e 2c 0d 0a 09 09 |terRotat|ion,....|
|00001e70| 09 09 09 09 09 09 51 75 | 61 74 50 72 6f 64 75 63 |......Qu|atProduc|
|00001e80| 74 28 51 75 61 74 46 72 | 6f 6d 41 78 69 73 41 6e |t(QuatFr|omAxisAn|
|00001e90| 64 41 6e 67 6c 65 28 59 | 2c 20 44 65 6c 74 61 54 |dAngle(Y|, DeltaT|
|00001ea0| 69 6d 65 2a 50 69 74 63 | 68 41 63 63 65 6c 29 2c |ime*Pitc|hAccel),|
|00001eb0| 0d 0a 09 09 09 09 09 09 | 09 09 51 75 61 74 50 72 |........|..QuatPr|
|00001ec0| 6f 64 75 63 74 28 51 75 | 61 74 46 72 6f 6d 41 78 |oduct(Qu|atFromAx|
|00001ed0| 69 73 41 6e 64 41 6e 67 | 6c 65 28 5a 2c 20 2d 31 |isAndAng|le(Z, -1|
|00001ee0| 2e 30 20 2a 20 44 65 6c | 74 61 54 69 6d 65 20 2a |.0 * Del|taTime *|
|00001ef0| 20 59 61 77 41 63 63 65 | 6c 29 2c 0d 0a 09 09 09 | YawAcce|l),.....|
|00001f00| 09 09 09 09 09 51 75 61 | 74 46 72 6f 6d 41 78 69 |.....Qua|tFromAxi|
|00001f10| 73 41 6e 64 41 6e 67 6c | 65 28 58 2c 20 44 65 6c |sAndAngl|e(X, Del|
|00001f20| 74 61 54 69 6d 65 20 2a | 20 52 6f 6c 6c 41 63 63 |taTime *| RollAcc|
|00001f30| 65 6c 29 29 29 29 3b 0d | 0a 0d 0a 09 4e 65 77 52 |el))));.|....NewR|
|00001f40| 6f 74 61 74 69 6f 6e 20 | 3d 20 51 75 61 74 54 6f |otation |= QuatTo|
|00001f50| 52 6f 74 61 74 6f 72 28 | 20 53 70 61 63 65 46 69 |Rotator(| SpaceFi|
|00001f60| 67 68 74 65 72 52 6f 74 | 61 74 69 6f 6e 20 29 3b |ghterRot|ation );|
|00001f70| 0d 0a 0d 0a 09 2f 2f 20 | 49 66 20 61 75 74 6f 61 |.....// |If autoa|
|00001f80| 64 6a 75 73 74 69 6e 67 | 20 72 6f 6c 6c 2c 20 63 |djusting| roll, c|
|00001f90| 6c 61 6d 70 20 74 6f 20 | 30 0d 0a 09 69 66 20 28 |lamp to |0...if (|
|00001fa0| 20 50 6c 61 79 65 72 43 | 6f 6e 74 72 6f 6c 6c 65 | PlayerC|ontrolle|
|00001fb0| 72 28 43 6f 6e 74 72 6f | 6c 6c 65 72 29 2e 62 44 |r(Contro|ller).bD|
|00001fc0| 75 63 6b 20 3e 20 30 20 | 26 26 20 28 28 4e 65 77 |uck > 0 |&& ((New|
|00001fd0| 52 6f 74 61 74 69 6f 6e | 2e 52 6f 6c 6c 20 3c 20 |Rotation|.Roll < |
|00001fe0| 30 20 26 26 20 52 6f 74 | 61 74 69 6f 6e 2e 52 6f |0 && Rot|ation.Ro|
|00001ff0| 6c 6c 20 3e 20 30 29 20 | 7c 7c 20 28 4e 65 77 52 |ll > 0) ||| (NewR|
|00002000| 6f 74 61 74 69 6f 6e 2e | 52 6f 6c 6c 20 3e 20 30 |otation.|Roll > 0|
|00002010| 20 26 26 20 52 6f 74 61 | 74 69 6f 6e 2e 52 6f 6c | && Rota|tion.Rol|
|00002020| 6c 20 3c 20 30 29 29 20 | 29 0d 0a 09 7b 0d 0a 09 |l < 0)) |)...{...|
|00002030| 09 4e 65 77 52 6f 74 61 | 74 69 6f 6e 2e 52 6f 6c |.NewRota|tion.Rol|
|00002040| 6c 20 3d 20 30 3b 0d 0a | 09 09 52 6f 6c 6c 41 63 |l = 0;..|..RollAc|
|00002050| 63 65 6c 20 3d 20 30 3b | 0d 0a 09 7d 0d 0a 0d 0a |cel = 0;|...}....|
|00002060| 09 41 63 63 65 6c 65 72 | 61 74 69 6f 6e 20 3d 20 |.Acceler|ation = |
|00002070| 56 65 63 74 6f 72 28 4e | 65 77 52 6f 74 61 74 69 |Vector(N|ewRotati|
|00002080| 6f 6e 29 20 2a 20 44 65 | 73 69 72 65 64 56 65 6c |on) * De|siredVel|
|00002090| 6f 63 69 74 79 3b 0d 0a | 0d 0a 09 2f 2f 20 73 74 |ocity;..|...// st|
|000020a0| 72 61 66 69 6e 67 0d 0a | 09 53 74 72 61 66 65 41 |rafing..|.StrafeA|
|000020b0| 63 63 65 6c 09 3d 20 52 | 6f 74 61 74 69 6f 6e 53 |ccel.= R|otationS|
|000020c0| 6d 6f 6f 74 68 46 61 63 | 74 6f 72 2a 53 74 72 61 |moothFac|tor*Stra|
|000020d0| 66 65 41 63 63 65 6c 3b | 0d 0a 09 69 66 20 28 20 |feAccel;|...if ( |
|000020e0| 50 6c 61 79 65 72 43 6f | 6e 74 72 6f 6c 6c 65 72 |PlayerCo|ntroller|
|000020f0| 28 43 6f 6e 74 72 6f 6c | 6c 65 72 29 2e 61 55 70 |(Control|ler).aUp|
|00002100| 20 3d 3d 20 30 20 29 0d | 0a 09 09 53 74 72 61 66 | == 0 ).|...Straf|
|00002110| 65 41 63 63 65 6c 09 2b | 3d 20 44 65 6c 74 61 54 |eAccel.+|= DeltaT|
|00002120| 69 6d 65 2a 53 74 72 61 | 66 65 41 63 63 65 6c 52 |ime*Stra|feAccelR|
|00002130| 61 74 65 2a 50 6c 61 79 | 65 72 43 6f 6e 74 72 6f |ate*Play|erContro|
|00002140| 6c 6c 65 72 28 43 6f 6e | 74 72 6f 6c 6c 65 72 29 |ller(Con|troller)|
|00002150| 2e 61 53 74 72 61 66 65 | 3b 0d 0a 09 53 74 72 61 |.aStrafe|;...Stra|
|00002160| 66 65 41 63 63 65 6c 20 | 3d 20 46 43 6c 61 6d 70 |feAccel |= FClamp|
|00002170| 28 20 53 74 72 61 66 65 | 41 63 63 65 6c 2c 20 2d |( Strafe|Accel, -|
|00002180| 4d 61 78 53 74 72 61 66 | 65 2c 20 4d 61 78 53 74 |MaxStraf|e, MaxSt|
|00002190| 72 61 66 65 29 3b 0d 0a | 09 47 65 74 41 78 65 73 |rafe);..|.GetAxes|
|000021a0| 28 20 4e 65 77 52 6f 74 | 61 74 69 6f 6e 2c 20 58 |( NewRot|ation, X|
|000021b0| 2c 20 59 2c 20 5a 20 29 | 3b 0d 0a 09 41 63 63 65 |, Y, Z )|;...Acce|
|000021c0| 6c 65 72 61 74 69 6f 6e | 20 2b 3d 20 53 74 72 61 |leration| += Stra|
|000021d0| 66 65 41 63 63 65 6c 20 | 2a 20 59 3b 0d 0a 0d 0a |feAccel |* Y;....|
|000021e0| 09 2f 2f 20 41 64 6a 75 | 73 74 20 52 6f 6c 6c 69 |.// Adju|st Rolli|
|000021f0| 6e 67 20 62 61 73 65 64 | 20 6f 6e 20 53 74 61 66 |ng based| on Staf|
|00002200| 69 6e 67 0d 0a 09 4e 65 | 77 52 6f 74 61 74 69 6f |ing...Ne|wRotatio|
|00002210| 6e 2e 52 6f 6c 6c 20 2b | 3d 20 53 74 72 61 66 65 |n.Roll +|= Strafe|
|00002220| 41 63 63 65 6c 20 2a 20 | 31 35 3b 0d 0a 09 44 65 |Accel * |15;...De|
|00002230| 6c 61 79 65 64 44 65 62 | 75 67 53 74 72 69 6e 67 |layedDeb|ugString|
|00002240| 20 3d 20 22 4e 65 77 52 | 6f 74 61 74 69 6f 6e 2e | = "NewR|otation.|
|00002250| 52 6f 6c 6c 3a 22 20 40 | 20 4e 65 77 52 6f 74 61 |Roll:" @| NewRota|
|00002260| 74 69 6f 6e 2e 52 6f 6c | 6c 20 40 20 22 53 74 72 |tion.Rol|l @ "Str|
|00002270| 61 66 65 41 63 63 65 6c | 3a 22 20 40 20 53 74 72 |afeAccel|:" @ Str|
|00002280| 61 66 65 41 63 63 65 6c | 3b 0d 0a 0d 0a 09 2f 2f |afeAccel|;.....//|
|00002290| 20 54 61 6b 65 20 63 6f | 6d 70 6c 65 74 65 20 63 | Take co|mplete c|
|000022a0| 6f 6e 74 72 6f 6c 20 6f | 6e 20 52 6f 74 61 74 69 |ontrol o|n Rotati|
|000022b0| 6f 6e 0d 0a 09 62 52 6f | 74 61 74 65 54 6f 44 65 |on...bRo|tateToDe|
|000022c0| 73 69 72 65 64 09 3d 20 | 74 72 75 65 3b 0d 0a 09 |sired.= |true;...|
|000022d0| 62 52 6f 6c 6c 54 6f 44 | 65 73 69 72 65 64 09 09 |bRollToD|esired..|
|000022e0| 3d 20 74 72 75 65 3b 0d | 0a 09 44 65 73 69 72 65 |= true;.|..Desire|
|000022f0| 64 52 6f 74 61 74 69 6f | 6e 09 09 3d 20 4e 65 77 |dRotatio|n..= New|
|00002300| 52 6f 74 61 74 69 6f 6e | 3b 0d 0a 09 53 65 74 52 |Rotation|;...SetR|
|00002310| 6f 74 61 74 69 6f 6e 28 | 20 4e 65 77 52 6f 74 61 |otation(| NewRota|
|00002320| 74 69 6f 6e 20 29 3b 0d | 0a 7d 0d 0a 0d 0a 66 75 |tion );.|.}....fu|
|00002330| 6e 63 74 69 6f 6e 20 50 | 72 6f 63 65 73 73 4d 6f |nction P|rocessMo|
|00002340| 76 65 28 66 6c 6f 61 74 | 20 44 65 6c 74 61 54 69 |ve(float| DeltaTi|
|00002350| 6d 65 2c 20 76 65 63 74 | 6f 72 20 4e 65 77 41 63 |me, vect|or NewAc|
|00002360| 63 65 6c 2c 20 65 44 6f | 75 62 6c 65 43 6c 69 63 |cel, eDo|ubleClic|
|00002370| 6b 44 69 72 20 44 6f 75 | 62 6c 65 43 6c 69 63 6b |kDir Dou|bleClick|
|00002380| 4d 6f 76 65 2c 20 72 6f | 74 61 74 6f 72 20 44 65 |Move, ro|tator De|
|00002390| 6c 74 61 52 6f 74 29 0d | 0a 7b 0d 0a 09 69 66 20 |ltaRot).|.{...if |
|000023a0| 28 20 52 6f 6c 65 20 3d | 3d 20 52 6f 6c 65 5f 41 |( Role =|= Role_A|
|000023b0| 75 74 68 6f 72 69 74 79 | 20 29 0d 0a 09 7b 0d 0a |uthority| )...{..|
|000023c0| 09 09 69 66 20 28 20 21 | 62 50 6f 73 74 4e 65 74 |..if ( !|bPostNet|
|000023d0| 43 61 6c 6c 65 64 20 29 | 0d 0a 09 09 09 72 65 74 |Called )|.....ret|
|000023e0| 75 72 6e 3b 0d 0a 0d 0a | 09 09 55 70 64 61 74 65 |urn;....|..Update|
|000023f0| 41 75 74 6f 54 61 72 67 | 65 74 74 69 6e 67 28 29 |AutoTarg|etting()|
|00002400| 3b 0d 0a 0d 0a 09 09 2f | 2f 20 48 61 63 6b 20 77 |;....../|/ Hack w|
|00002410| 68 65 6e 20 73 70 61 63 | 65 66 69 67 68 74 65 72 |hen spac|efighter|
|00002420| 20 67 65 74 73 20 73 74 | 75 63 6b 2e 2e 2e 20 6b | gets st|uck... k|
|00002430| 69 6c 6c 21 21 0d 0a 09 | 09 69 66 20 28 20 56 53 |ill!!...|.if ( VS|
|00002440| 69 7a 65 28 56 65 6c 6f | 63 69 74 79 29 20 3c 20 |ize(Velo|city) < |
|00002450| 31 30 30 20 29 0d 0a 09 | 09 09 54 61 6b 65 44 61 |100 )...|..TakeDa|
|00002460| 6d 61 67 65 28 64 65 66 | 61 75 6c 74 2e 48 65 61 |mage(def|ault.Hea|
|00002470| 6c 74 68 2a 32 2c 20 53 | 65 6c 66 2c 20 4c 6f 63 |lth*2, S|elf, Loc|
|00002480| 61 74 69 6f 6e 2c 20 76 | 65 63 74 28 30 2c 30 2c |ation, v|ect(0,0,|
|00002490| 30 29 2c 20 4e 6f 6e 65 | 29 3b 0d 0a 09 7d 0d 0a |0), None|);...}..|
|000024a0| 7d 0d 0a 0d 0a 66 75 6e | 63 74 69 6f 6e 20 44 69 |}....fun|ction Di|
|000024b0| 73 70 6c 61 79 44 65 62 | 75 67 28 43 61 6e 76 61 |splayDeb|ug(Canva|
|000024c0| 73 20 43 61 6e 76 61 73 | 2c 20 6f 75 74 20 66 6c |s Canvas|, out fl|
|000024d0| 6f 61 74 20 59 4c 2c 20 | 6f 75 74 20 66 6c 6f 61 |oat YL, |out floa|
|000024e0| 74 20 59 50 6f 73 29 0d | 0a 7b 0d 0a 09 6c 6f 63 |t YPos).|.{...loc|
|000024f0| 61 6c 20 76 65 63 74 6f | 72 09 09 58 2c 59 2c 5a |al vecto|r..X,Y,Z|
|00002500| 3b 0d 0a 09 6c 6f 63 61 | 6c 20 66 6c 6f 61 74 09 |;...loca|l float.|
|00002510| 09 09 46 6f 72 77 61 72 | 64 56 65 6c 6f 63 69 74 |..Forwar|dVelocit|
|00002520| 79 3b 0d 0a 09 6c 6f 63 | 61 6c 20 43 6f 6e 74 72 |y;...loc|al Contr|
|00002530| 6f 6c 6c 65 72 09 43 3b | 0d 0a 0d 0a 09 73 75 70 |oller.C;|.....sup|
|00002540| 65 72 2e 44 69 73 70 6c | 61 79 44 65 62 75 67 28 |er.Displ|ayDebug(|
|00002550| 43 61 6e 76 61 73 2c 20 | 59 4c 2c 20 59 50 6f 73 |Canvas, |YL, YPos|
|00002560| 29 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 43 6f 6e 74 |);.....i|f ( Cont|
|00002570| 72 6f 6c 6c 65 72 20 3d | 3d 20 4e 6f 6e 65 20 29 |roller =|= None )|
|00002580| 0d 0a 09 7b 0d 0a 09 09 | 43 61 6e 76 61 73 2e 53 |...{....|Canvas.S|
|00002590| 65 74 44 72 61 77 43 6f | 6c 6f 72 28 32 35 35 2c |etDrawCo|lor(255,|
|000025a0| 30 2c 30 29 3b 0d 0a 09 | 09 43 61 6e 76 61 73 2e |0,0);...|.Canvas.|
|000025b0| 44 72 61 77 54 65 78 74 | 28 22 4c 4f 43 41 4c 20 |DrawText|("LOCAL |
|000025c0| 43 4f 4e 54 52 4f 4c 4c | 45 52 22 29 3b 0d 0a 09 |CONTROLL|ER");...|
|000025d0| 09 59 50 6f 73 20 2b 3d | 20 59 4c 3b 0d 0a 09 09 |.YPos +=| YL;....|
|000025e0| 43 61 6e 76 61 73 2e 53 | 65 74 50 6f 73 28 34 2c |Canvas.S|etPos(4,|
|000025f0| 59 50 6f 73 29 3b 0d 0a | 0d 0a 09 09 43 20 3d 20 |YPos);..|....C = |
|00002600| 4c 65 76 65 6c 2e 47 65 | 74 4c 6f 63 61 6c 50 6c |Level.Ge|tLocalPl|
|00002610| 61 79 65 72 43 6f 6e 74 | 72 6f 6c 6c 65 72 28 29 |ayerCont|roller()|
|00002620| 3b 0d 0a 09 09 43 2e 44 | 69 73 70 6c 61 79 44 65 |;....C.D|isplayDe|
|00002630| 62 75 67 28 43 61 6e 76 | 61 73 2c 59 4c 2c 59 50 |bug(Canv|as,YL,YP|
|00002640| 6f 73 29 3b 0d 0a 09 7d | 0d 0a 0d 0a 09 43 61 6e |os);...}|.....Can|
|00002650| 76 61 73 2e 44 72 61 77 | 54 65 78 74 28 22 2d 2d |vas.Draw|Text("--|
|00002660| 20 53 50 41 43 45 46 49 | 47 48 54 45 52 22 29 3b | SPACEFI|GHTER");|
|00002670| 0d 0a 09 59 50 6f 73 20 | 2b 3d 20 59 4c 3b 0d 0a |...YPos |+= YL;..|
|00002680| 09 43 61 6e 76 61 73 2e | 53 65 74 50 6f 73 28 34 |.Canvas.|SetPos(4|
|00002690| 2c 59 50 6f 73 29 3b 0d | 0a 0d 0a 09 47 65 74 41 |,YPos);.|....GetA|
|000026a0| 78 65 73 28 52 6f 74 61 | 74 69 6f 6e 2c 20 58 2c |xes(Rota|tion, X,|
|000026b0| 20 59 2c 20 5a 29 3b 0d | 0a 09 43 61 6e 76 61 73 | Y, Z);.|..Canvas|
|000026c0| 2e 44 72 61 77 54 65 78 | 74 28 22 2d 2d 20 47 65 |.DrawTex|t("-- Ge|
|000026d0| 74 41 78 65 73 2c 20 58 | 3a 22 40 53 74 72 69 6e |tAxes, X|:"@Strin|
|000026e0| 67 28 58 29 24 22 2c 20 | 59 3a 22 40 53 74 72 69 |g(X)$", |Y:"@Stri|
|000026f0| 6e 67 28 59 29 24 22 2c | 20 5a 3a 22 40 53 74 72 |ng(Y)$",| Z:"@Str|
|00002700| 69 6e 67 28 5a 29 29 3b | 0d 0a 09 59 50 6f 73 20 |ing(Z));|...YPos |
|00002710| 2b 3d 20 59 4c 3b 0d 0a | 09 43 61 6e 76 61 73 2e |+= YL;..|.Canvas.|
|00002720| 53 65 74 50 6f 73 28 34 | 2c 59 50 6f 73 29 3b 0d |SetPos(4|,YPos);.|
|00002730| 0a 0d 0a 09 43 61 6e 76 | 61 73 2e 44 72 61 77 54 |....Canv|as.DrawT|
|00002740| 65 78 74 28 22 2d 2d 20 | 41 63 63 65 6c 65 72 61 |ext("-- |Accelera|
|00002750| 74 69 6f 6e 3a 22 40 53 | 74 72 69 6e 67 28 41 63 |tion:"@S|tring(Ac|
|00002760| 63 65 6c 65 72 61 74 69 | 6f 6e 29 29 3b 0d 0a 09 |celerati|on));...|
|00002770| 59 50 6f 73 20 2b 3d 20 | 59 4c 3b 0d 0a 09 43 61 |YPos += |YL;...Ca|
|00002780| 6e 76 61 73 2e 53 65 74 | 50 6f 73 28 34 2c 59 50 |nvas.Set|Pos(4,YP|
|00002790| 6f 73 29 3b 0d 0a 0d 0a | 09 2f 2f 20 44 65 62 75 |os);....|.// Debu|
|000027a0| 67 20 73 74 75 66 66 73 | 0d 0a 09 46 6f 72 77 61 |g stuffs|...Forwa|
|000027b0| 72 64 56 65 6c 6f 63 69 | 74 79 20 3d 20 56 65 6c |rdVeloci|ty = Vel|
|000027c0| 6f 63 69 74 79 20 44 6f | 74 20 56 65 63 74 6f 72 |ocity Do|t Vector|
|000027d0| 28 52 6f 74 61 74 69 6f | 6e 29 3b 0d 0a 09 43 61 |(Rotatio|n);...Ca|
|000027e0| 6e 76 61 73 2e 44 72 61 | 77 54 65 78 74 28 22 2d |nvas.Dra|wText("-|
|000027f0| 2d 20 47 65 61 72 3a 22 | 40 44 65 73 69 72 65 64 |- Gear:"|@Desired|
|00002800| 56 65 6c 6f 63 69 74 79 | 2f 31 30 2e 30 24 22 25 |Velocity|/10.0$"%|
|00002810| 20 46 6f 72 77 61 72 64 | 20 56 65 6c 6f 63 69 74 | Forward| Velocit|
|00002820| 79 3a 22 40 53 74 72 69 | 6e 67 28 46 6f 72 77 61 |y:"@Stri|ng(Forwa|
|00002830| 72 64 56 65 6c 6f 63 69 | 74 79 29 29 3b 0d 0a 09 |rdVeloci|ty));...|
|00002840| 59 50 6f 73 20 2b 3d 20 | 59 4c 3b 0d 0a 09 43 61 |YPos += |YL;...Ca|
|00002850| 6e 76 61 73 2e 53 65 74 | 50 6f 73 28 34 2c 59 50 |nvas.Set|Pos(4,YP|
|00002860| 6f 73 29 3b 0d 0a 0d 0a | 09 43 61 6e 76 61 73 2e |os);....|.Canvas.|
|00002870| 44 72 61 77 54 65 78 74 | 28 22 2d 2d 20 44 44 53 |DrawText|("-- DDS|
|00002880| 22 40 44 65 6c 61 79 65 | 64 44 65 62 75 67 53 74 |"@Delaye|dDebugSt|
|00002890| 72 69 6e 67 29 3b 0d 0a | 09 59 50 6f 73 20 2b 3d |ring);..|.YPos +=|
|000028a0| 20 59 4c 3b 0d 0a 09 43 | 61 6e 76 61 73 2e 53 65 | YL;...C|anvas.Se|
|000028b0| 74 50 6f 73 28 34 2c 59 | 50 6f 73 29 3b 0d 0a 7d |tPos(4,Y|Pos);..}|
|000028c0| 0d 0a 0d 0a 73 69 6d 75 | 6c 61 74 65 64 20 66 75 |....simu|lated fu|
|000028d0| 6e 63 74 69 6f 6e 20 72 | 6f 74 61 74 6f 72 20 47 |nction r|otator G|
|000028e0| 65 74 56 69 65 77 52 6f | 74 61 74 69 6f 6e 28 29 |etViewRo|tation()|
|000028f0| 0d 0a 7b 0d 0a 09 69 66 | 20 28 20 49 73 4c 6f 63 |..{...if| ( IsLoc|
|00002900| 61 6c 6c 79 43 6f 6e 74 | 72 6f 6c 6c 65 64 28 29 |allyCont|rolled()|
|00002910| 20 26 26 20 48 65 61 6c | 74 68 20 3e 20 30 20 29 | && Heal|th > 0 )|
|00002920| 0d 0a 09 09 72 65 74 75 | 72 6e 20 51 75 61 74 54 |....retu|rn QuatT|
|00002930| 6f 52 6f 74 61 74 6f 72 | 28 53 70 61 63 65 46 69 |oRotator|(SpaceFi|
|00002940| 67 68 74 65 72 52 6f 74 | 61 74 69 6f 6e 29 3b 09 |ghterRot|ation);.|
|00002950| 2f 2f 20 74 72 75 65 20 | 72 6f 74 61 74 69 6f 6e |// true |rotation|
|00002960| 0d 0a 09 65 6c 73 65 0d | 0a 09 09 72 65 74 75 72 |...else.|...retur|
|00002970| 6e 20 52 6f 74 61 74 69 | 6f 6e 3b 0d 0a 7d 0d 0a |n Rotati|on;..}..|
|00002980| 0d 0a 73 69 6d 75 6c 61 | 74 65 64 20 66 75 6e 63 |..simula|ted func|
|00002990| 74 69 6f 6e 20 53 70 65 | 63 69 61 6c 43 61 6c 63 |tion Spe|cialCalc|
|000029a0| 46 69 72 73 74 50 65 72 | 73 6f 6e 56 69 65 77 28 |FirstPer|sonView(|
|000029b0| 50 6c 61 79 65 72 43 6f | 6e 74 72 6f 6c 6c 65 72 |PlayerCo|ntroller|
|000029c0| 20 50 43 2c 20 6f 75 74 | 20 61 63 74 6f 72 20 56 | PC, out| actor V|
|000029d0| 69 65 77 41 63 74 6f 72 | 2c 20 6f 75 74 20 76 65 |iewActor|, out ve|
|000029e0| 63 74 6f 72 20 43 61 6d | 65 72 61 4c 6f 63 61 74 |ctor Cam|eraLocat|
|000029f0| 69 6f 6e 2c 20 6f 75 74 | 20 72 6f 74 61 74 6f 72 |ion, out| rotator|
|00002a00| 20 43 61 6d 65 72 61 52 | 6f 74 61 74 69 6f 6e 20 | CameraR|otation |
|00002a10| 29 0d 0a 7b 0d 0a 20 20 | 20 20 6c 6f 63 61 6c 20 |)..{.. | local |
|00002a20| 76 65 63 74 6f 72 09 78 | 2c 20 79 2c 20 7a 3b 0d |vector.x|, y, z;.|
|00002a30| 0a 09 6c 6f 63 61 6c 20 | 72 6f 74 61 74 6f 72 09 |..local |rotator.|
|00002a40| 52 3b 0d 0a 0d 0a 09 43 | 61 6d 65 72 61 4c 6f 63 |R;.....C|ameraLoc|
|00002a50| 61 74 69 6f 6e 20 3d 20 | 4c 6f 63 61 74 69 6f 6e |ation = |Location|
|00002a60| 3b 0d 0a 09 56 69 65 77 | 41 63 74 6f 72 09 3d 20 |;...View|Actor.= |
|00002a70| 53 65 6c 66 3b 0d 0a 09 | 52 09 09 09 3d 20 47 65 |Self;...|R...= Ge|
|00002a80| 74 56 69 65 77 52 6f 74 | 61 74 69 6f 6e 28 29 3b |tViewRot|ation();|
|00002a90| 0d 0a 20 20 20 20 47 65 | 74 41 78 65 73 28 52 2c |.. Ge|tAxes(R,|
|00002aa0| 20 78 2c 20 79 2c 20 7a | 29 3b 0d 0a 0d 0a 20 20 | x, y, z|);.... |
|00002ab0| 20 20 2f 2f 20 46 69 72 | 73 74 2d 70 65 72 73 6f | // Fir|st-perso|
|00002ac0| 6e 20 76 69 65 77 2e 0d | 0a 20 20 20 20 43 61 6d |n view..|. Cam|
|00002ad0| 65 72 61 52 6f 74 61 74 | 69 6f 6e 20 3d 20 4e 6f |eraRotat|ion = No|
|00002ae0| 72 6d 61 6c 69 7a 65 28 | 52 20 2b 20 50 43 2e 53 |rmalize(|R + PC.S|
|00002af0| 68 61 6b 65 52 6f 74 29 | 3b 20 2f 2f 20 61 6d 62 |hakeRot)|; // amb|
|00002b00| 0d 0a 20 20 20 20 43 61 | 6d 65 72 61 4c 6f 63 61 |.. Ca|meraLoca|
|00002b10| 74 69 6f 6e 20 3d 20 43 | 61 6d 65 72 61 4c 6f 63 |tion = C|ameraLoc|
|00002b20| 61 74 69 6f 6e 20 2b 0d | 0a 20 20 20 20 20 20 20 |ation +.|. |
|00002b30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 50 43 | | PC|
|00002b40| 2e 53 68 61 6b 65 4f 66 | 66 73 65 74 2e 58 20 2a |.ShakeOf|fset.X *|
|00002b50| 20 78 20 2b 0d 0a 20 20 | 20 20 20 20 20 20 20 20 | x +.. | |
|00002b60| 20 20 20 20 20 20 20 20 | 20 20 20 50 43 2e 53 68 | | PC.Sh|
|00002b70| 61 6b 65 4f 66 66 73 65 | 74 2e 59 20 2a 20 79 20 |akeOffse|t.Y * y |
|00002b80| 2b 0d 0a 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |+.. | |
|00002b90| 20 20 20 20 20 20 20 20 | 50 43 2e 53 68 61 6b 65 | |PC.Shake|
|00002ba0| 4f 66 66 73 65 74 2e 5a | 20 2a 20 7a 3b 0d 0a 0d |Offset.Z| * z;...|
|00002bb0| 0a 09 2f 2f 20 43 61 6d | 65 72 61 20 70 6f 73 69 |..// Cam|era posi|
|00002bc0| 74 69 6f 6e 20 69 73 20 | 6c 6f 63 6b 65 64 20 74 |tion is |locked t|
|00002bd0| 6f 20 76 65 68 69 63 6c | 65 0d 0a 09 43 61 6d 65 |o vehicl|e...Came|
|00002be0| 72 61 4c 6f 63 61 74 69 | 6f 6e 20 3d 20 43 61 6d |raLocati|on = Cam|
|00002bf0| 65 72 61 4c 6f 63 61 74 | 69 6f 6e 20 2b 20 28 46 |eraLocat|ion + (F|
|00002c00| 50 43 61 6d 50 6f 73 20 | 3e 3e 20 47 65 74 56 69 |PCamPos |>> GetVi|
|00002c10| 65 77 52 6f 74 61 74 69 | 6f 6e 28 29 29 3b 0d 0a |ewRotati|on());..|
|00002c20| 7d 0d 0a 0d 0a 2f 2f 20 | 53 70 65 63 69 61 6c 20 |}....// |Special |
|00002c30| 63 61 6c 63 2d 76 69 65 | 77 20 66 6f 72 20 76 65 |calc-vie|w for ve|
|00002c40| 68 69 63 6c 65 73 0d 0a | 73 69 6d 75 6c 61 74 65 |hicles..|simulate|
|00002c50| 64 20 66 75 6e 63 74 69 | 6f 6e 20 62 6f 6f 6c 20 |d functi|on bool |
|00002c60| 53 70 65 63 69 61 6c 43 | 61 6c 63 56 69 65 77 28 |SpecialC|alcView(|
|00002c70| 6f 75 74 20 61 63 74 6f | 72 20 56 69 65 77 41 63 |out acto|r ViewAc|
|00002c80| 74 6f 72 2c 20 6f 75 74 | 20 76 65 63 74 6f 72 20 |tor, out| vector |
|00002c90| 43 61 6d 65 72 61 4c 6f | 63 61 74 69 6f 6e 2c 20 |CameraLo|cation, |
|00002ca0| 6f 75 74 20 72 6f 74 61 | 74 6f 72 20 43 61 6d 65 |out rota|tor Came|
|00002cb0| 72 61 52 6f 74 61 74 69 | 6f 6e 20 29 0d 0a 7b 0d |raRotati|on )..{.|
|00002cc0| 0a 09 6c 6f 63 61 6c 20 | 76 65 63 74 6f 72 09 09 |..local |vector..|
|00002cd0| 09 43 61 6d 4c 6f 6f 6b | 41 74 2c 20 48 69 74 4c |.CamLook|At, HitL|
|00002ce0| 6f 63 61 74 69 6f 6e 2c | 20 48 69 74 4e 6f 72 6d |ocation,| HitNorm|
|00002cf0| 61 6c 3b 0d 0a 09 6c 6f | 63 61 6c 20 50 6c 61 79 |al;...lo|cal Play|
|00002d00| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 09 50 43 3b |erContro|ller.PC;|
|00002d10| 0d 0a 09 6c 6f 63 61 6c | 20 66 6c 6f 61 74 09 09 |...local| float..|
|00002d20| 09 09 43 61 6d 44 69 73 | 74 46 61 63 74 6f 72 3b |..CamDis|tFactor;|
|00002d30| 0d 0a 09 6c 6f 63 61 6c | 20 76 65 63 74 6f 72 09 |...local| vector.|
|00002d40| 09 09 43 61 6d 44 69 73 | 74 61 6e 63 65 3b 0d 0a |..CamDis|tance;..|
|00002d50| 09 6c 6f 63 61 6c 20 52 | 6f 74 61 74 6f 72 09 09 |.local R|otator..|
|00002d60| 09 43 61 6d 52 6f 74 61 | 74 69 6f 6e 52 61 74 65 |.CamRota|tionRate|
|00002d70| 3b 0d 0a 09 6c 6f 63 61 | 6c 20 52 6f 74 61 74 6f |;...loca|l Rotato|
|00002d80| 72 09 09 09 54 61 72 67 | 65 74 52 6f 74 61 74 69 |r...Targ|etRotati|
|00002d90| 6f 6e 3b 0d 0a 0d 0a 09 | 50 43 20 3d 20 50 6c 61 |on;.....|PC = Pla|
|00002da0| 79 65 72 43 6f 6e 74 72 | 6f 6c 6c 65 72 28 43 6f |yerContr|oller(Co|
|00002db0| 6e 74 72 6f 6c 6c 65 72 | 29 3b 0d 0a 0d 0a 09 2f |ntroller|);...../|
|00002dc0| 2f 20 4f 6e 6c 79 20 64 | 6f 20 74 68 69 73 20 6d |/ Only d|o this m|
|00002dd0| 6f 64 65 20 69 66 20 77 | 65 20 68 61 76 65 20 61 |ode if w|e have a|
|00002de0| 20 70 6c 61 79 65 72 63 | 6f 6e 74 72 6f 6c 6c 65 | playerc|ontrolle|
|00002df0| 72 20 76 69 65 77 69 6e | 67 20 74 68 69 73 20 76 |r viewin|g this v|
|00002e00| 65 68 69 63 6c 65 0d 0a | 09 69 66 20 28 20 50 43 |ehicle..|.if ( PC|
|00002e10| 20 3d 3d 20 4e 6f 6e 65 | 20 7c 7c 20 50 43 2e 56 | == None| || PC.V|
|00002e20| 69 65 77 54 61 72 67 65 | 74 20 3d 3d 20 4e 6f 6e |iewTarge|t == Non|
|00002e30| 65 20 29 0d 0a 09 09 72 | 65 74 75 72 6e 20 66 61 |e )....r|eturn fa|
|00002e40| 6c 73 65 3b 0d 0a 0d 0a | 09 56 69 65 77 41 63 74 |lse;....|.ViewAct|
|00002e50| 6f 72 20 3d 20 53 65 6c | 66 3b 0d 0a 0d 0a 09 69 |or = Sel|f;.....i|
|00002e60| 66 20 28 20 21 50 43 2e | 62 42 65 68 69 6e 64 56 |f ( !PC.|bBehindV|
|00002e70| 69 65 77 20 29 09 2f 2f | 20 46 69 72 73 74 20 50 |iew ).//| First P|
|00002e80| 65 72 73 6f 6e 20 56 69 | 65 77 0d 0a 09 7b 0d 0a |erson Vi|ew...{..|
|00002e90| 09 09 53 70 65 63 69 61 | 6c 43 61 6c 63 46 69 72 |..Specia|lCalcFir|
|00002ea0| 73 74 50 65 72 73 6f 6e | 56 69 65 77 28 20 50 43 |stPerson|View( PC|
|00002eb0| 2c 20 56 69 65 77 41 63 | 74 6f 72 2c 20 43 61 6d |, ViewAc|tor, Cam|
|00002ec0| 65 72 61 4c 6f 63 61 74 | 69 6f 6e 2c 20 43 61 6d |eraLocat|ion, Cam|
|00002ed0| 65 72 61 52 6f 74 61 74 | 69 6f 6e 29 3b 0d 0a 09 |eraRotat|ion);...|
|00002ee0| 09 72 65 74 75 72 6e 20 | 74 72 75 65 3b 0d 0a 09 |.return |true;...|
|00002ef0| 7d 0d 0a 0d 0a 09 2f 2f | 20 33 72 64 20 70 65 72 |}.....//| 3rd per|
|00002f00| 73 6f 6e 20 76 69 65 77 | 0d 0a 09 6d 79 44 65 6c |son view|...myDel|
|00002f10| 74 61 54 69 6d 65 09 09 | 09 3d 20 4c 65 76 65 6c |taTime..|.= Level|
|00002f20| 2e 54 69 6d 65 53 65 63 | 6f 6e 64 73 20 2d 20 4c |.TimeSec|onds - L|
|00002f30| 61 73 74 54 69 6d 65 53 | 65 63 6f 6e 64 73 3b 0d |astTimeS|econds;.|
|00002f40| 0a 09 4c 61 73 74 54 69 | 6d 65 53 65 63 6f 6e 64 |..LastTi|meSecond|
|00002f50| 73 09 09 3d 20 4c 65 76 | 65 6c 2e 54 69 6d 65 53 |s..= Lev|el.TimeS|
|00002f60| 65 63 6f 6e 64 73 3b 0d | 0a 09 43 61 6d 4c 6f 6f |econds;.|..CamLoo|
|00002f70| 6b 41 74 09 09 09 3d 20 | 56 69 65 77 41 63 74 6f |kAt...= |ViewActo|
|00002f80| 72 2e 4c 6f 63 61 74 69 | 6f 6e 20 2b 20 28 56 65 |r.Locati|on + (Ve|
|00002f90| 63 74 28 36 30 2c 20 30 | 2c 20 30 29 20 3e 3e 20 |ct(60, 0|, 0) >> |
|00002fa0| 56 69 65 77 41 63 74 6f | 72 2e 52 6f 74 61 74 69 |ViewActo|r.Rotati|
|00002fb0| 6f 6e 29 3b 0d 0a 0d 0a | 09 2f 2f 20 43 61 6d 65 |on);....|.// Came|
|00002fc0| 72 61 20 52 6f 74 61 74 | 69 6f 6e 0d 0a 09 69 66 |ra Rotat|ion...if|
|00002fd0| 20 28 20 56 69 65 77 41 | 63 74 6f 72 20 3d 3d 20 | ( ViewA|ctor == |
|00002fe0| 53 65 6c 66 20 29 20 2f | 2f 20 43 6c 69 65 6e 74 |Self ) /|/ Client|
|00002ff0| 20 48 61 63 6b 20 74 6f | 20 63 61 6d 65 72 61 20 | Hack to| camera |
|00003000| 72 6f 6c 6c 20 69 73 20 | 6e 6f 74 20 61 66 66 65 |roll is |not affe|
|00003010| 63 74 65 64 20 62 79 20 | 73 74 72 61 66 69 6e 67 |cted by |strafing|
|00003020| 0d 0a 09 09 54 61 72 67 | 65 74 52 6f 74 61 74 69 |....Targ|etRotati|
|00003030| 6f 6e 20 3d 20 47 65 74 | 56 69 65 77 52 6f 74 61 |on = Get|ViewRota|
|00003040| 74 69 6f 6e 28 29 3b 0d | 0a 09 65 6c 73 65 0d 0a |tion();.|..else..|
|00003050| 09 09 54 61 72 67 65 74 | 52 6f 74 61 74 69 6f 6e |..Target|Rotation|
|00003060| 20 3d 20 56 69 65 77 41 | 63 74 6f 72 2e 52 6f 74 | = ViewA|ctor.Rot|
|00003070| 61 74 69 6f 6e 3b 0d 0a | 0d 0a 09 69 66 20 28 20 |ation;..|...if ( |
|00003080| 49 73 49 6e 53 74 61 74 | 65 28 27 53 68 6f 74 44 |IsInStat|e('ShotD|
|00003090| 6f 77 6e 27 29 20 29 09 | 09 2f 2f 20 73 68 6f 74 |own') ).|.// shot|
|000030a0| 64 6f 77 6e 0d 0a 09 7b | 0d 0a 09 09 54 61 72 67 |down...{|....Targ|
|000030b0| 65 74 52 6f 74 61 74 69 | 6f 6e 2e 59 61 77 20 2b |etRotati|on.Yaw +|
|000030c0| 3d 20 33 32 37 36 38 3b | 0d 0a 09 09 4e 6f 72 6d |= 32768;|....Norm|
|000030d0| 61 6c 69 7a 65 28 20 54 | 61 72 67 65 74 52 6f 74 |alize( T|argetRot|
|000030e0| 61 74 69 6f 6e 20 29 3b | 0d 0a 09 09 43 61 6d 52 |ation );|....CamR|
|000030f0| 6f 74 61 74 69 6f 6e 49 | 6e 65 72 74 69 61 20 3d |otationI|nertia =|
|00003100| 20 64 65 66 61 75 6c 74 | 2e 43 61 6d 52 6f 74 61 | default|.CamRota|
|00003110| 74 69 6f 6e 49 6e 65 72 | 74 69 61 20 2a 20 31 30 |tionIner|tia * 10|
|00003120| 2e 66 3b 0d 0a 09 09 43 | 61 6d 44 69 73 74 46 61 |.f;....C|amDistFa|
|00003130| 63 74 6f 72 09 3d 20 32 | 2e 30 3b 0d 0a 0d 0a 09 |ctor.= 2|.0;.....|
|00003140| 7d 0d 0a 09 65 6c 73 65 | 20 69 66 20 28 20 49 73 |}...else| if ( Is|
|00003150| 49 6e 53 74 61 74 65 28 | 27 44 79 69 6e 67 27 29 |InState(|'Dying')|
|00003160| 20 29 09 2f 2f 20 64 65 | 61 64 0d 0a 09 7b 0d 0a | ).// de|ad...{..|
|00003170| 09 09 43 61 6d 52 6f 74 | 61 74 69 6f 6e 49 6e 65 |..CamRot|ationIne|
|00003180| 72 74 69 61 20 3d 20 64 | 65 66 61 75 6c 74 2e 43 |rtia = d|efault.C|
|00003190| 61 6d 52 6f 74 61 74 69 | 6f 6e 49 6e 65 72 74 69 |amRotati|onInerti|
|000031a0| 61 20 2a 20 35 30 2e 66 | 3b 0d 0a 09 09 43 61 6d |a * 50.f|;....Cam|
|000031b0| 44 69 73 74 46 61 63 74 | 6f 72 09 3d 20 33 2e 30 |DistFact|or.= 3.0|
|000031c0| 3b 0d 0a 09 7d 0d 0a 09 | 65 6c 73 65 0d 0a 09 7b |;...}...|else...{|
|000031d0| 0d 0a 09 09 43 61 6d 44 | 69 73 74 46 61 63 74 6f |....CamD|istFacto|
|000031e0| 72 09 3d 20 31 20 2d 20 | 28 44 65 73 69 72 65 64 |r.= 1 - |(Desired|
|000031f0| 56 65 6c 6f 63 69 74 79 | 20 2f 20 41 69 72 53 70 |Velocity| / AirSp|
|00003200| 65 65 64 29 3b 0d 0a 09 | 7d 0d 0a 0d 0a 09 43 61 |eed);...|}.....Ca|
|00003210| 6d 52 6f 74 61 74 69 6f | 6e 52 61 74 65 09 09 09 |mRotatio|nRate...|
|00003220| 3d 20 4e 6f 72 6d 61 6c | 69 7a 65 28 54 61 72 67 |= Normal|ize(Targ|
|00003230| 65 74 52 6f 74 61 74 69 | 6f 6e 20 2d 20 4c 61 73 |etRotati|on - Las|
|00003240| 74 43 61 6d 52 6f 74 29 | 3b 0d 0a 09 43 61 6d 65 |tCamRot)|;...Came|
|00003250| 72 61 52 6f 74 61 74 69 | 6f 6e 2e 59 61 77 09 09 |raRotati|on.Yaw..|
|00003260| 3d 20 43 61 6c 63 49 6e | 65 72 74 69 61 28 6d 79 |= CalcIn|ertia(my|
|00003270| 44 65 6c 74 61 54 69 6d | 65 2c 20 43 61 6d 52 6f |DeltaTim|e, CamRo|
|00003280| 74 61 74 69 6f 6e 49 6e | 65 72 74 69 61 2c 20 43 |tationIn|ertia, C|
|00003290| 61 6d 52 6f 74 61 74 69 | 6f 6e 52 61 74 65 2e 59 |amRotati|onRate.Y|
|000032a0| 61 77 2c 20 4c 61 73 74 | 43 61 6d 52 6f 74 2e 59 |aw, Last|CamRot.Y|
|000032b0| 61 77 29 3b 0d 0a 09 43 | 61 6d 65 72 61 52 6f 74 |aw);...C|ameraRot|
|000032c0| 61 74 69 6f 6e 2e 50 69 | 74 63 68 09 3d 20 43 61 |ation.Pi|tch.= Ca|
|000032d0| 6c 63 49 6e 65 72 74 69 | 61 28 6d 79 44 65 6c 74 |lcInerti|a(myDelt|
|000032e0| 61 54 69 6d 65 2c 20 43 | 61 6d 52 6f 74 61 74 69 |aTime, C|amRotati|
|000032f0| 6f 6e 49 6e 65 72 74 69 | 61 2c 20 43 61 6d 52 6f |onInerti|a, CamRo|
|00003300| 74 61 74 69 6f 6e 52 61 | 74 65 2e 50 69 74 63 68 |tationRa|te.Pitch|
|00003310| 2c 20 4c 61 73 74 43 61 | 6d 52 6f 74 2e 50 69 74 |, LastCa|mRot.Pit|
|00003320| 63 68 29 3b 0d 0a 09 43 | 61 6d 65 72 61 52 6f 74 |ch);...C|ameraRot|
|00003330| 61 74 69 6f 6e 2e 52 6f | 6c 6c 09 09 3d 20 43 61 |ation.Ro|ll..= Ca|
|00003340| 6c 63 49 6e 65 72 74 69 | 61 28 6d 79 44 65 6c 74 |lcInerti|a(myDelt|
|00003350| 61 54 69 6d 65 2c 20 43 | 61 6d 52 6f 74 61 74 69 |aTime, C|amRotati|
|00003360| 6f 6e 49 6e 65 72 74 69 | 61 2c 20 43 61 6d 52 6f |onInerti|a, CamRo|
|00003370| 74 61 74 69 6f 6e 52 61 | 74 65 2e 52 6f 6c 6c 2c |tationRa|te.Roll,|
|00003380| 20 4c 61 73 74 43 61 6d | 52 6f 74 2e 52 6f 6c 6c | LastCam|Rot.Roll|
|00003390| 29 3b 0d 0a 09 4c 61 73 | 74 43 61 6d 52 6f 74 09 |);...Las|tCamRot.|
|000033a0| 09 09 09 3d 20 43 61 6d | 65 72 61 52 6f 74 61 74 |...= Cam|eraRotat|
|000033b0| 69 6f 6e 3b 0d 0a 0d 0a | 09 2f 2f 20 43 61 6d 65 |ion;....|.// Came|
|000033c0| 72 61 20 4c 6f 63 61 74 | 69 6f 6e 0d 0a 09 43 61 |ra Locat|ion...Ca|
|000033d0| 6d 44 69 73 74 61 6e 63 | 65 09 09 3d 20 56 65 63 |mDistanc|e..= Vec|
|000033e0| 74 28 2d 31 38 30 2c 20 | 30 2c 20 38 30 29 3b 0d |t(-180, |0, 80);.|
|000033f0| 0a 09 43 61 6d 44 69 73 | 74 61 6e 63 65 2e 58 09 |..CamDis|tance.X.|
|00003400| 2d 3d 20 43 61 6d 44 69 | 73 74 46 61 63 74 6f 72 |-= CamDi|stFactor|
|00003410| 20 2a 20 32 30 30 2e 30 | 3b 09 2f 2f 20 41 64 6a | * 200.0|;.// Adj|
|00003420| 75 73 74 20 43 61 6d 65 | 72 61 20 6c 6f 63 61 74 |ust Came|ra locat|
|00003430| 69 6f 6e 20 62 61 73 65 | 64 20 6f 6e 20 73 68 69 |ion base|d on shi|
|00003440| 70 27 73 20 76 65 6c 6f | 63 69 74 79 0d 0a 09 43 |p's velo|city...C|
|00003450| 61 6d 65 72 61 4c 6f 63 | 61 74 69 6f 6e 09 3d 20 |ameraLoc|ation.= |
|00003460| 43 61 6d 4c 6f 6f 6b 41 | 74 20 2b 20 28 43 61 6d |CamLookA|t + (Cam|
|00003470| 44 69 73 74 61 6e 63 65 | 20 3e 3e 20 43 61 6d 65 |Distance| >> Came|
|00003480| 72 61 52 6f 74 61 74 69 | 6f 6e 29 3b 0d 0a 0d 0a |raRotati|on);....|
|00003490| 09 69 66 20 28 20 54 72 | 61 63 65 28 20 48 69 74 |.if ( Tr|ace( Hit|
|000034a0| 4c 6f 63 61 74 69 6f 6e | 2c 20 48 69 74 4e 6f 72 |Location|, HitNor|
|000034b0| 6d 61 6c 2c 20 43 61 6d | 65 72 61 4c 6f 63 61 74 |mal, Cam|eraLocat|
|000034c0| 69 6f 6e 2c 20 56 69 65 | 77 41 63 74 6f 72 2e 4c |ion, Vie|wActor.L|
|000034d0| 6f 63 61 74 69 6f 6e 2c | 20 66 61 6c 73 65 2c 20 |ocation,| false, |
|000034e0| 76 65 63 74 28 31 30 2c | 20 31 30 2c 20 31 30 29 |vect(10,| 10, 10)|
|000034f0| 20 29 20 21 3d 20 4e 6f | 6e 65 20 29 0d 0a 09 09 | ) != No|ne )....|
|00003500| 43 61 6d 65 72 61 4c 6f | 63 61 74 69 6f 6e 20 3d |CameraLo|cation =|
|00003510| 20 48 69 74 4c 6f 63 61 | 74 69 6f 6e 20 2b 20 48 | HitLoca|tion + H|
|00003520| 69 74 4e 6f 72 6d 61 6c | 20 2a 20 31 30 3b 0d 0a |itNormal| * 10;..|
|00003530| 0d 0a 09 72 65 74 75 72 | 6e 20 74 72 75 65 3b 0d |...retur|n true;.|
|00003540| 0a 7d 0d 0a 0d 0a 0d 0a | 2f 2f 0d 0a 2f 2f 20 54 |.}......|//..// T|
|00003550| 61 72 67 65 74 69 6e 67 | 0d 0a 2f 2f 0d 0a 0d 0a |argeting|..//....|
|00003560| 73 69 6d 75 6c 61 74 65 | 64 20 66 75 6e 63 74 69 |simulate|d functi|
|00003570| 6f 6e 20 62 6f 6f 6c 20 | 49 73 54 61 72 67 65 74 |on bool |IsTarget|
|00003580| 52 65 6c 65 76 61 6e 74 | 28 20 56 65 68 69 63 6c |Relevant|( Vehicl|
|00003590| 65 20 54 61 72 67 65 74 | 20 29 0d 0a 7b 0d 0a 09 |e Target| )..{...|
|000035a0| 69 66 20 28 20 54 61 72 | 67 65 74 20 3d 3d 20 4e |if ( Tar|get == N|
|000035b0| 6f 6e 65 20 29 0d 0a 09 | 09 72 65 74 75 72 6e 20 |one )...|.return |
|000035c0| 66 61 6c 73 65 3b 0d 0a | 0d 0a 09 69 66 20 28 20 |false;..|...if ( |
|000035d0| 54 61 72 67 65 74 2e 54 | 65 61 6d 20 3d 3d 20 54 |Target.T|eam == T|
|000035e0| 65 61 6d 20 7c 7c 20 54 | 61 72 67 65 74 2e 48 65 |eam || T|arget.He|
|000035f0| 61 6c 74 68 20 3c 20 31 | 20 7c 7c 20 54 61 72 67 |alth < 1| || Targ|
|00003600| 65 74 2e 62 44 65 6c 65 | 74 65 4d 65 0d 0a 09 09 |et.bDele|teMe....|
|00003610| 7c 7c 20 56 53 69 7a 65 | 28 4c 6f 63 61 74 69 6f ||| VSize|(Locatio|
|00003620| 6e 20 2d 20 54 61 72 67 | 65 74 2e 4c 6f 63 61 74 |n - Targ|et.Locat|
|00003630| 69 6f 6e 29 20 3e 20 4d | 61 78 54 61 72 67 65 74 |ion) > M|axTarget|
|00003640| 69 6e 67 52 61 6e 67 65 | 20 29 0d 0a 09 09 72 65 |ingRange| )....re|
|00003650| 74 75 72 6e 20 66 61 6c | 73 65 3b 0d 0a 0d 0a 09 |turn fal|se;.....|
|00003660| 2f 2f 20 54 61 72 67 65 | 74 20 69 73 20 6c 6f 63 |// Targe|t is loc|
|00003670| 61 74 65 64 20 62 65 68 | 69 6e 64 20 73 70 61 63 |ated beh|ind spac|
|00003680| 65 66 69 67 68 74 65 72 | 0d 0a 09 69 66 20 28 20 |efighter|...if ( |
|00003690| 28 54 61 72 67 65 74 2e | 4c 6f 63 61 74 69 6f 6e |(Target.|Location|
|000036a0| 20 2d 20 4c 6f 63 61 74 | 69 6f 6e 29 20 44 6f 74 | - Locat|ion) Dot|
|000036b0| 20 76 65 63 74 6f 72 28 | 52 6f 74 61 74 69 6f 6e | vector(|Rotation|
|000036c0| 29 20 3c 20 30 20 29 0d | 0a 09 09 72 65 74 75 72 |) < 0 ).|...retur|
|000036d0| 6e 20 66 61 6c 73 65 3b | 0d 0a 0d 0a 09 72 65 74 |n false;|.....ret|
|000036e0| 75 72 6e 20 74 72 75 65 | 3b 0d 0a 7d 0d 0a 0d 0a |urn true|;..}....|
|000036f0| 73 69 6d 75 6c 61 74 65 | 64 20 66 75 6e 63 74 69 |simulate|d functi|
|00003700| 6f 6e 20 50 72 65 76 57 | 65 61 70 6f 6e 28 29 0d |on PrevW|eapon().|
|00003710| 0a 7b 0d 0a 09 53 65 72 | 76 65 72 50 72 65 76 54 |.{...Ser|verPrevT|
|00003720| 61 72 67 65 74 28 20 66 | 61 6c 73 65 20 29 3b 0d |arget( f|alse );.|
|00003730| 0a 7d 0d 0a 0d 0a 73 69 | 6d 75 6c 61 74 65 64 20 |.}....si|mulated |
|00003740| 66 75 6e 63 74 69 6f 6e | 20 4e 65 78 74 57 65 61 |function| NextWea|
|00003750| 70 6f 6e 28 29 0d 0a 7b | 0d 0a 09 53 65 72 76 65 |pon()..{|...Serve|
|00003760| 72 4e 65 78 74 54 61 72 | 67 65 74 28 20 66 61 6c |rNextTar|get( fal|
|00003770| 73 65 20 29 3b 0d 0a 7d | 0d 0a 0d 0a 65 78 65 63 |se );..}|....exec|
|00003780| 20 66 75 6e 63 74 69 6f | 6e 20 54 61 72 67 65 74 | functio|n Target|
|00003790| 43 6c 6f 73 65 73 74 54 | 6f 43 72 6f 73 73 68 61 |ClosestT|oCrossha|
|000037a0| 69 72 28 29 0d 0a 7b 0d | 0a 09 62 54 61 72 67 65 |ir()..{.|..bTarge|
|000037b0| 74 43 6c 6f 73 65 73 74 | 54 6f 43 72 6f 73 73 68 |tClosest|ToCrossh|
|000037c0| 61 69 72 20 3d 20 74 72 | 75 65 3b 09 2f 2f 46 6c |air = tr|ue;.//Fl|
|000037d0| 61 67 20 69 74 20 74 6f | 20 62 65 20 64 6f 6e 65 |ag it to| be done|
|000037e0| 20 6e 65 78 74 20 74 69 | 6d 65 20 77 65 20 68 61 | next ti|me we ha|
|000037f0| 76 65 20 61 20 43 61 6e | 76 61 73 0d 0a 7d 0d 0a |ve a Can|vas..}..|
|00003800| 0d 0a 66 75 6e 63 74 69 | 6f 6e 20 53 65 72 76 65 |..functi|on Serve|
|00003810| 72 4e 65 78 74 54 61 72 | 67 65 74 28 20 62 6f 6f |rNextTar|get( boo|
|00003820| 6c 20 62 54 72 79 4f 6e | 63 65 20 29 0d 0a 7b 0d |l bTryOn|ce )..{.|
|00003830| 0a 09 6c 6f 63 61 6c 20 | 66 6c 6f 61 74 09 09 09 |..local |float...|
|00003840| 43 75 72 72 65 6e 74 54 | 61 72 67 65 74 44 69 73 |CurrentT|argetDis|
|00003850| 74 2c 20 42 65 73 74 44 | 69 73 74 2c 20 44 69 73 |t, BestD|ist, Dis|
|00003860| 74 3b 0d 0a 09 6c 6f 63 | 61 6c 20 43 6f 6e 74 72 |t;...loc|al Contr|
|00003870| 6f 6c 6c 65 72 09 43 3b | 0d 0a 09 6c 6f 63 61 6c |oller.C;|...local|
|00003880| 20 56 65 68 69 63 6c 65 | 09 09 56 2c 20 42 65 73 | Vehicle|..V, Bes|
|00003890| 74 56 3b 0d 0a 09 6c 6f | 63 61 6c 20 69 6e 74 09 |tV;...lo|cal int.|
|000038a0| 09 09 6e 75 6d 74 61 72 | 67 65 74 73 3b 0d 0a 0d |..numtar|gets;...|
|000038b0| 0a 09 42 65 73 74 44 69 | 73 74 20 3d 20 4d 61 78 |..BestDi|st = Max|
|000038c0| 54 61 72 67 65 74 69 6e | 67 52 61 6e 67 65 3b 0d |Targetin|gRange;.|
|000038d0| 0a 0d 0a 09 69 66 20 28 | 20 21 49 73 54 61 72 67 |....if (| !IsTarg|
|000038e0| 65 74 52 65 6c 65 76 61 | 6e 74 28 20 43 75 72 72 |etReleva|nt( Curr|
|000038f0| 65 6e 74 54 61 72 67 65 | 74 20 29 20 29 0d 0a 09 |entTarge|t ) )...|
|00003900| 09 43 75 72 72 65 6e 74 | 54 61 72 67 65 74 20 3d |.Current|Target =|
|00003910| 20 4e 6f 6e 65 3b 0d 0a | 0d 0a 09 69 66 20 28 20 | None;..|...if ( |
|00003920| 43 75 72 72 65 6e 74 54 | 61 72 67 65 74 20 21 3d |CurrentT|arget !=|
|00003930| 20 4e 6f 6e 65 20 29 0d | 0a 09 09 43 75 72 72 65 | None ).|...Curre|
|00003940| 6e 74 54 61 72 67 65 74 | 44 69 73 74 20 3d 20 56 |ntTarget|Dist = V|
|00003950| 53 69 7a 65 28 4c 6f 63 | 61 74 69 6f 6e 20 2d 20 |Size(Loc|ation - |
|00003960| 43 75 72 72 65 6e 74 54 | 61 72 67 65 74 2e 4c 6f |CurrentT|arget.Lo|
|00003970| 63 61 74 69 6f 6e 29 3b | 0d 0a 09 65 6c 73 65 0d |cation);|...else.|
|00003980| 0a 09 09 43 75 72 72 65 | 6e 74 54 61 72 67 65 74 |...Curre|ntTarget|
|00003990| 44 69 73 74 20 3d 20 30 | 3b 0d 0a 0d 0a 09 66 6f |Dist = 0|;.....fo|
|000039a0| 72 20 28 43 20 3d 20 4c | 65 76 65 6c 2e 43 6f 6e |r (C = L|evel.Con|
|000039b0| 74 72 6f 6c 6c 65 72 4c | 69 73 74 3b 20 43 20 21 |trollerL|ist; C !|
|000039c0| 3d 20 4e 6f 6e 65 3b 20 | 43 20 3d 20 43 2e 4e 65 |= None; |C = C.Ne|
|000039d0| 78 74 43 6f 6e 74 72 6f | 6c 6c 65 72 29 0d 0a 09 |xtContro|ller)...|
|000039e0| 7b 0d 0a 09 09 56 20 3d | 20 56 65 68 69 63 6c 65 |{....V =| Vehicle|
|000039f0| 28 43 2e 50 61 77 6e 29 | 3b 0d 0a 0d 0a 09 09 69 |(C.Pawn)|;......i|
|00003a00| 66 20 28 20 56 20 21 3d | 20 4e 6f 6e 65 20 26 26 |f ( V !=| None &&|
|00003a10| 20 56 20 21 3d 20 43 75 | 72 72 65 6e 74 54 61 72 | V != Cu|rrentTar|
|00003a20| 67 65 74 20 26 26 20 49 | 73 54 61 72 67 65 74 52 |get && I|sTargetR|
|00003a30| 65 6c 65 76 61 6e 74 28 | 20 56 20 29 20 29 0d 0a |elevant(| V ) )..|
|00003a40| 09 09 7b 0d 0a 09 09 09 | 44 69 73 74 20 3d 20 56 |..{.....|Dist = V|
|00003a50| 53 69 7a 65 28 4c 6f 63 | 61 74 69 6f 6e 20 2d 20 |Size(Loc|ation - |
|00003a60| 56 2e 4c 6f 63 61 74 69 | 6f 6e 29 3b 0d 0a 0d 0a |V.Locati|on);....|
|00003a70| 09 09 09 6e 75 6d 74 61 | 72 67 65 74 73 2b 2b 3b |...numta|rgets++;|
|00003a80| 0d 0a 09 09 09 69 66 20 | 28 20 44 69 73 74 20 3e |.....if |( Dist >|
|00003a90| 20 43 75 72 72 65 6e 74 | 54 61 72 67 65 74 44 69 | Current|TargetDi|
|00003aa0| 73 74 20 26 26 20 44 69 | 73 74 20 3c 20 42 65 73 |st && Di|st < Bes|
|00003ab0| 74 44 69 73 74 20 26 26 | 20 4c 69 6e 65 4f 66 53 |tDist &&| LineOfS|
|00003ac0| 69 67 68 74 54 6f 28 20 | 56 20 29 20 29 0d 0a 09 |ightTo( |V ) )...|
|00003ad0| 09 09 7b 0d 0a 09 09 09 | 09 42 65 73 74 56 09 09 |..{.....|.BestV..|
|00003ae0| 3d 20 56 3b 0d 0a 09 09 | 09 09 42 65 73 74 44 69 |= V;....|..BestDi|
|00003af0| 73 74 09 3d 20 44 69 73 | 74 3b 0d 0a 09 09 09 7d |st.= Dis|t;.....}|
|00003b00| 0d 0a 09 09 7d 0d 0a 09 | 7d 0d 0a 0d 0a 09 69 66 |....}...|}.....if|
|00003b10| 20 28 20 42 65 73 74 56 | 20 21 3d 20 4e 6f 6e 65 | ( BestV| != None|
|00003b20| 20 29 0d 0a 09 09 53 65 | 72 76 65 72 53 65 74 54 | )....Se|rverSetT|
|00003b30| 61 72 67 65 74 28 20 42 | 65 73 74 56 20 29 3b 0d |arget( B|estV );.|
|00003b40| 0a 09 65 6c 73 65 20 69 | 66 20 28 20 21 62 54 72 |..else i|f ( !bTr|
|00003b50| 79 4f 6e 63 65 20 26 26 | 20 43 75 72 72 65 6e 74 |yOnce &&| Current|
|00003b60| 54 61 72 67 65 74 20 21 | 3d 20 4e 6f 6e 65 20 26 |Target !|= None &|
|00003b70| 26 20 6e 75 6d 74 61 72 | 67 65 74 73 3e 30 20 29 |& numtar|gets>0 )|
|00003b80| 0d 0a 09 7b 0d 0a 09 09 | 43 75 72 72 65 6e 74 54 |...{....|CurrentT|
|00003b90| 61 72 67 65 74 20 3d 20 | 4e 6f 6e 65 3b 0d 0a 09 |arget = |None;...|
|00003ba0| 09 53 65 72 76 65 72 4e | 65 78 74 54 61 72 67 65 |.ServerN|extTarge|
|00003bb0| 74 28 20 74 72 75 65 20 | 29 3b 0d 0a 09 7d 0d 0a |t( true |);...}..|
|00003bc0| 7d 0d 0a 0d 0a 66 75 6e | 63 74 69 6f 6e 20 53 65 |}....fun|ction Se|
|00003bd0| 72 76 65 72 50 72 65 76 | 54 61 72 67 65 74 28 20 |rverPrev|Target( |
|00003be0| 62 6f 6f 6c 20 62 54 72 | 79 4f 6e 63 65 20 29 0d |bool bTr|yOnce ).|
|00003bf0| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 66 6c 6f 61 74 |.{...loc|al float|
|00003c00| 09 09 09 43 75 72 72 65 | 6e 74 54 61 72 67 65 74 |...Curre|ntTarget|
|00003c10| 44 69 73 74 2c 20 42 65 | 73 74 44 69 73 74 2c 20 |Dist, Be|stDist, |
|00003c20| 44 69 73 74 3b 0d 0a 09 | 6c 6f 63 61 6c 20 43 6f |Dist;...|local Co|
|00003c30| 6e 74 72 6f 6c 6c 65 72 | 09 43 3b 0d 0a 09 6c 6f |ntroller|.C;...lo|
|00003c40| 63 61 6c 20 56 65 68 69 | 63 6c 65 09 09 56 2c 20 |cal Vehi|cle..V, |
|00003c50| 42 65 73 74 56 3b 0d 0a | 09 6c 6f 63 61 6c 20 69 |BestV;..|.local i|
|00003c60| 6e 74 09 09 09 6e 75 6d | 74 61 72 67 65 74 73 3b |nt...num|targets;|
|00003c70| 0d 0a 0d 0a 09 69 66 20 | 28 20 21 49 73 54 61 72 |.....if |( !IsTar|
|00003c80| 67 65 74 52 65 6c 65 76 | 61 6e 74 28 20 43 75 72 |getRelev|ant( Cur|
|00003c90| 72 65 6e 74 54 61 72 67 | 65 74 20 29 20 29 0d 0a |rentTarg|et ) )..|
|00003ca0| 09 09 43 75 72 72 65 6e | 74 54 61 72 67 65 74 20 |..Curren|tTarget |
|00003cb0| 3d 20 4e 6f 6e 65 3b 0d | 0a 0d 0a 09 69 66 20 28 |= None;.|....if (|
|00003cc0| 20 43 75 72 72 65 6e 74 | 54 61 72 67 65 74 20 21 | Current|Target !|
|00003cd0| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 43 75 72 72 |= None )|....Curr|
|00003ce0| 65 6e 74 54 61 72 67 65 | 74 44 69 73 74 20 3d 20 |entTarge|tDist = |
|00003cf0| 56 53 69 7a 65 28 4c 6f | 63 61 74 69 6f 6e 20 2d |VSize(Lo|cation -|
|00003d00| 20 43 75 72 72 65 6e 74 | 54 61 72 67 65 74 2e 4c | Current|Target.L|
|00003d10| 6f 63 61 74 69 6f 6e 29 | 3b 0d 0a 09 65 6c 73 65 |ocation)|;...else|
|00003d20| 0d 0a 09 09 43 75 72 72 | 65 6e 74 54 61 72 67 65 |....Curr|entTarge|
|00003d30| 74 44 69 73 74 20 3d 20 | 4d 61 78 54 61 72 67 65 |tDist = |MaxTarge|
|00003d40| 74 69 6e 67 52 61 6e 67 | 65 3b 0d 0a 0d 0a 09 66 |tingRang|e;.....f|
|00003d50| 6f 72 20 28 43 20 3d 20 | 4c 65 76 65 6c 2e 43 6f |or (C = |Level.Co|
|00003d60| 6e 74 72 6f 6c 6c 65 72 | 4c 69 73 74 3b 20 43 20 |ntroller|List; C |
|00003d70| 21 3d 20 4e 6f 6e 65 3b | 20 43 20 3d 20 43 2e 4e |!= None;| C = C.N|
|00003d80| 65 78 74 43 6f 6e 74 72 | 6f 6c 6c 65 72 29 0d 0a |extContr|oller)..|
|00003d90| 09 7b 0d 0a 09 09 56 20 | 3d 20 56 65 68 69 63 6c |.{....V |= Vehicl|
|00003da0| 65 28 43 2e 50 61 77 6e | 29 3b 0d 0a 0d 0a 09 09 |e(C.Pawn|);......|
|00003db0| 69 66 20 28 20 56 20 21 | 3d 20 4e 6f 6e 65 20 26 |if ( V !|= None &|
|00003dc0| 26 20 56 20 21 3d 20 43 | 75 72 72 65 6e 74 54 61 |& V != C|urrentTa|
|00003dd0| 72 67 65 74 20 26 26 20 | 49 73 54 61 72 67 65 74 |rget && |IsTarget|
|00003de0| 52 65 6c 65 76 61 6e 74 | 28 20 56 20 29 20 29 0d |Relevant|( V ) ).|
|00003df0| 0a 09 09 7b 0d 0a 09 09 | 09 6e 75 6d 74 61 72 67 |...{....|.numtarg|
|00003e00| 65 74 73 2b 2b 3b 0d 0a | 09 09 09 44 69 73 74 20 |ets++;..|...Dist |
|00003e10| 3d 20 56 53 69 7a 65 28 | 4c 6f 63 61 74 69 6f 6e |= VSize(|Location|
|00003e20| 20 2d 20 56 2e 4c 6f 63 | 61 74 69 6f 6e 29 3b 0d | - V.Loc|ation);.|
|00003e30| 0a 09 09 09 69 66 20 28 | 20 44 69 73 74 20 3c 20 |....if (| Dist < |
|00003e40| 43 75 72 72 65 6e 74 54 | 61 72 67 65 74 44 69 73 |CurrentT|argetDis|
|00003e50| 74 20 26 26 20 44 69 73 | 74 20 3e 20 42 65 73 74 |t && Dis|t > Best|
|00003e60| 44 69 73 74 20 26 26 20 | 4c 69 6e 65 4f 66 53 69 |Dist && |LineOfSi|
|00003e70| 67 68 74 54 6f 28 20 56 | 20 29 20 29 0d 0a 09 09 |ghtTo( V| ) )....|
|00003e80| 09 7b 0d 0a 09 09 09 09 | 42 65 73 74 56 09 09 3d |.{......|BestV..=|
|00003e90| 20 56 3b 0d 0a 09 09 09 | 09 42 65 73 74 44 69 73 | V;.....|.BestDis|
|00003ea0| 74 09 3d 20 44 69 73 74 | 3b 0d 0a 09 09 09 7d 0d |t.= Dist|;.....}.|
|00003eb0| 0a 09 09 7d 0d 0a 09 7d | 0d 0a 0d 0a 09 69 66 20 |...}...}|.....if |
|00003ec0| 28 20 42 65 73 74 56 20 | 21 3d 20 4e 6f 6e 65 20 |( BestV |!= None |
|00003ed0| 29 0d 0a 09 09 53 65 72 | 76 65 72 53 65 74 54 61 |)....Ser|verSetTa|
|00003ee0| 72 67 65 74 28 20 42 65 | 73 74 56 20 29 3b 0d 0a |rget( Be|stV );..|
|00003ef0| 09 65 6c 73 65 20 69 66 | 20 28 20 21 62 54 72 79 |.else if| ( !bTry|
|00003f00| 4f 6e 63 65 20 26 26 20 | 43 75 72 72 65 6e 74 54 |Once && |CurrentT|
|00003f10| 61 72 67 65 74 20 21 3d | 20 4e 6f 6e 65 20 26 26 |arget !=| None &&|
|00003f20| 20 6e 75 6d 74 61 72 67 | 65 74 73 3e 30 20 29 0d | numtarg|ets>0 ).|
|00003f30| 0a 09 7b 0d 0a 09 09 43 | 75 72 72 65 6e 74 54 61 |..{....C|urrentTa|
|00003f40| 72 67 65 74 20 3d 20 4e | 6f 6e 65 3b 0d 0a 09 09 |rget = N|one;....|
|00003f50| 53 65 72 76 65 72 50 72 | 65 76 54 61 72 67 65 74 |ServerPr|evTarget|
|00003f60| 28 20 74 72 75 65 20 29 | 3b 0d 0a 09 7d 0d 0a 7d |( true )|;...}..}|
|00003f70| 0d 0a 0d 0a 2f 2a 20 41 | 63 71 75 69 72 65 64 20 |..../* A|cquired |
|00003f80| 61 20 6e 65 77 20 54 61 | 72 67 65 74 20 2a 2f 0d |a new Ta|rget */.|
|00003f90| 0a 66 75 6e 63 74 69 6f | 6e 20 53 65 72 76 65 72 |.functio|n Server|
|00003fa0| 53 65 74 54 61 72 67 65 | 74 28 56 65 68 69 63 6c |SetTarge|t(Vehicl|
|00003fb0| 65 20 4e 65 77 54 61 72 | 67 65 74 29 0d 0a 7b 0d |e NewTar|get)..{.|
|00003fc0| 0a 09 69 66 20 28 20 50 | 6c 61 79 65 72 43 6f 6e |..if ( P|layerCon|
|00003fd0| 74 72 6f 6c 6c 65 72 28 | 43 6f 6e 74 72 6f 6c 6c |troller(|Controll|
|00003fe0| 65 72 29 20 21 3d 20 4e | 6f 6e 65 20 29 0d 0a 09 |er) != N|one )...|
|00003ff0| 09 50 6c 61 79 65 72 43 | 6f 6e 74 72 6f 6c 6c 65 |.PlayerC|ontrolle|
|00004000| 72 28 43 6f 6e 74 72 6f | 6c 6c 65 72 29 2e 43 6c |r(Contro|ller).Cl|
|00004010| 69 65 6e 74 50 6c 61 79 | 53 6f 75 6e 64 28 20 54 |ientPlay|Sound( T|
|00004020| 61 72 67 65 74 41 63 71 | 75 69 72 65 64 53 6f 75 |argetAcq|uiredSou|
|00004030| 6e 64 20 29 3b 0d 0a 0d | 0a 09 43 75 72 72 65 6e |nd );...|..Curren|
|00004040| 74 54 61 72 67 65 74 20 | 3d 20 4e 65 77 54 61 72 |tTarget |= NewTar|
|00004050| 67 65 74 3b 0d 0a 09 62 | 41 75 74 6f 54 61 72 67 |get;...b|AutoTarg|
|00004060| 65 74 20 3d 20 66 61 6c | 73 65 3b 0d 0a 7d 0d 0a |et = fal|se;..}..|
|00004070| 0d 0a 2f 2a 20 45 72 61 | 73 65 20 63 75 72 72 65 |../* Era|se curre|
|00004080| 6e 74 20 74 61 72 67 65 | 74 2c 20 61 6e 64 20 74 |nt targe|t, and t|
|00004090| 75 72 6e 73 20 6f 6e 20 | 61 75 74 6f 20 74 61 72 |urns on |auto tar|
|000040a0| 67 65 74 74 69 6e 67 20 | 2a 2f 0d 0a 66 75 6e 63 |getting |*/..func|
|000040b0| 74 69 6f 6e 20 54 61 72 | 67 65 74 55 6e 53 65 74 |tion Tar|getUnSet|
|000040c0| 28 29 0d 0a 7b 0d 0a 09 | 43 75 72 72 65 6e 74 54 |()..{...|CurrentT|
|000040d0| 61 72 67 65 74 09 3d 20 | 4e 6f 6e 65 3b 0d 0a 09 |arget.= |None;...|
|000040e0| 62 41 75 74 6f 54 61 72 | 67 65 74 09 09 3d 20 74 |bAutoTar|get..= t|
|000040f0| 72 75 65 3b 0d 0a 7d 0d | 0a 0d 0a 2f 2a 20 4c 6f |rue;..}.|.../* Lo|
|00004100| 63 6b 20 63 6c 6f 73 65 | 73 74 20 76 69 73 69 62 |ck close|st visib|
|00004110| 6c 65 20 65 6e 65 6d 79 | 20 2a 2f 0d 0a 66 75 6e |le enemy| */..fun|
|00004120| 63 74 69 6f 6e 20 55 70 | 64 61 74 65 41 75 74 6f |ction Up|dateAuto|
|00004130| 54 61 72 67 65 74 74 69 | 6e 67 28 29 0d 0a 7b 0d |Targetti|ng()..{.|
|00004140| 0a 09 6c 6f 63 61 6c 20 | 66 6c 6f 61 74 09 09 09 |..local |float...|
|00004150| 42 65 73 74 44 69 73 74 | 2c 20 44 69 73 74 3b 0d |BestDist|, Dist;.|
|00004160| 0a 09 6c 6f 63 61 6c 20 | 43 6f 6e 74 72 6f 6c 6c |..local |Controll|
|00004170| 65 72 09 43 3b 0d 0a 09 | 6c 6f 63 61 6c 20 56 65 |er.C;...|local Ve|
|00004180| 68 69 63 6c 65 09 09 56 | 2c 20 42 65 73 74 56 3b |hicle..V|, BestV;|
|00004190| 0d 0a 0d 0a 09 69 66 20 | 28 20 52 6f 6c 65 20 21 |.....if |( Role !|
|000041a0| 3d 20 52 4f 4c 45 5f 41 | 75 74 68 6f 72 69 74 79 |= ROLE_A|uthority|
|000041b0| 20 29 0d 0a 09 09 72 65 | 74 75 72 6e 3b 0d 0a 0d | )....re|turn;...|
|000041c0| 0a 09 2f 2f 20 49 66 20 | 70 6c 61 79 65 72 20 63 |..// If |player c|
|000041d0| 68 6f 73 65 6e 20 74 61 | 72 67 65 74 20 64 65 73 |hosen ta|rget des|
|000041e0| 74 72 6f 79 65 64 2c 20 | 62 65 67 69 6e 20 61 75 |troyed, |begin au|
|000041f0| 74 6f 74 61 72 67 65 74 | 69 6e 67 20 61 67 61 69 |totarget|ing agai|
|00004200| 6e 0d 0a 09 69 66 20 28 | 20 43 75 72 72 65 6e 74 |n...if (| Current|
|00004210| 54 61 72 67 65 74 20 3d | 3d 20 4e 6f 6e 65 20 7c |Target =|= None ||
|00004220| 7c 20 43 75 72 72 65 6e | 74 54 61 72 67 65 74 2e || Curren|tTarget.|
|00004230| 48 65 61 6c 74 68 20 3c | 20 31 20 7c 7c 20 43 75 |Health <| 1 || Cu|
|00004240| 72 72 65 6e 74 54 61 72 | 67 65 74 2e 62 44 65 6c |rrentTar|get.bDel|
|00004250| 65 74 65 4d 65 0d 0a 09 | 09 7c 7c 20 56 53 69 7a |eteMe...|.|| VSiz|
|00004260| 65 28 43 75 72 72 65 6e | 74 54 61 72 67 65 74 2e |e(Curren|tTarget.|
|00004270| 4c 6f 63 61 74 69 6f 6e | 20 2d 20 4c 6f 63 61 74 |Location| - Locat|
|00004280| 69 6f 6e 29 20 3e 20 4d | 61 78 54 61 72 67 65 74 |ion) > M|axTarget|
|00004290| 69 6e 67 52 61 6e 67 65 | 20 29 0d 0a 09 7b 0d 0a |ingRange| )...{..|
|000042a0| 09 09 69 66 20 28 20 43 | 75 72 72 65 6e 74 54 61 |..if ( C|urrentTa|
|000042b0| 72 67 65 74 20 21 3d 20 | 4e 6f 6e 65 20 29 0d 0a |rget != |None )..|
|000042c0| 09 09 7b 0d 0a 09 09 09 | 50 6c 61 79 65 72 43 6f |..{.....|PlayerCo|
|000042d0| 6e 74 72 6f 6c 6c 65 72 | 28 43 6f 6e 74 72 6f 6c |ntroller|(Control|
|000042e0| 6c 65 72 29 2e 43 6c 69 | 65 6e 74 50 6c 61 79 53 |ler).Cli|entPlayS|
|000042f0| 6f 75 6e 64 28 20 4c 6f | 63 6b 65 64 4f 6e 53 6f |ound( Lo|ckedOnSo|
|00004300| 75 6e 64 20 29 3b 0d 0a | 09 09 09 43 75 72 72 65 |und );..|...Curre|
|00004310| 6e 74 54 61 72 67 65 74 | 09 3d 20 4e 6f 6e 65 3b |ntTarget|.= None;|
|00004320| 0d 0a 09 09 7d 0d 0a 09 | 09 62 41 75 74 6f 54 61 |....}...|.bAutoTa|
|00004330| 72 67 65 74 09 09 3d 20 | 74 72 75 65 3b 0d 0a 09 |rget..= |true;...|
|00004340| 7d 0d 0a 0d 0a 09 2f 2f | 20 4f 6e 6c 79 20 63 68 |}.....//| Only ch|
|00004350| 65 63 6b 20 74 61 72 67 | 65 74 20 6f 6e 63 65 20 |eck targ|et once |
|00004360| 70 65 72 20 73 65 63 6f | 6e 64 20 74 6f 20 73 61 |per seco|nd to sa|
|00004370| 76 65 20 43 50 55 0d 0a | 09 69 66 20 28 20 21 62 |ve CPU..|.if ( !b|
|00004380| 41 75 74 6f 54 61 72 67 | 65 74 20 7c 7c 20 4c 61 |AutoTarg|et || La|
|00004390| 73 74 41 75 74 6f 54 61 | 72 67 65 74 54 69 6d 65 |stAutoTa|rgetTime|
|000043a0| 20 2b 20 31 20 3e 20 4c | 65 76 65 6c 2e 54 69 6d | + 1 > L|evel.Tim|
|000043b0| 65 53 65 63 6f 6e 64 73 | 20 29 0d 0a 09 09 72 65 |eSeconds| )....re|
|000043c0| 74 75 72 6e 3b 0d 0a 0d | 0a 09 4c 61 73 74 41 75 |turn;...|..LastAu|
|000043d0| 74 6f 54 61 72 67 65 74 | 54 69 6d 65 20 3d 20 4c |toTarget|Time = L|
|000043e0| 65 76 65 6c 2e 54 69 6d | 65 53 65 63 6f 6e 64 73 |evel.Tim|eSeconds|
|000043f0| 3b 0d 0a 0d 0a 09 69 66 | 20 28 20 43 75 72 72 65 |;.....if| ( Curre|
|00004400| 6e 74 54 61 72 67 65 74 | 20 3d 3d 20 4e 6f 6e 65 |ntTarget| == None|
|00004410| 20 29 0d 0a 09 09 42 65 | 73 74 44 69 73 74 20 3d | )....Be|stDist =|
|00004420| 20 4d 61 78 54 61 72 67 | 65 74 69 6e 67 52 61 6e | MaxTarg|etingRan|
|00004430| 67 65 3b 0d 0a 09 65 6c | 73 65 0d 0a 09 09 42 65 |ge;...el|se....Be|
|00004440| 73 74 44 69 73 74 20 3d | 20 56 53 69 7a 65 28 4c |stDist =| VSize(L|
|00004450| 6f 63 61 74 69 6f 6e 20 | 2d 20 43 75 72 72 65 6e |ocation |- Curren|
|00004460| 74 54 61 72 67 65 74 2e | 4c 6f 63 61 74 69 6f 6e |tTarget.|Location|
|00004470| 29 3b 0d 0a 0d 0a 09 2f | 2f 20 41 75 74 6f 6d 61 |);...../|/ Automa|
|00004480| 74 69 63 61 6c 6c 79 20 | 74 61 72 67 65 74 20 63 |tically |target c|
|00004490| 6c 6f 73 65 73 74 20 76 | 69 73 69 62 6c 65 20 65 |losest v|isible e|
|000044a0| 6e 65 6d 79 20 76 65 68 | 69 63 6c 65 0d 0a 09 66 |nemy veh|icle...f|
|000044b0| 6f 72 20 28 43 20 3d 20 | 4c 65 76 65 6c 2e 43 6f |or (C = |Level.Co|
|000044c0| 6e 74 72 6f 6c 6c 65 72 | 4c 69 73 74 3b 20 43 20 |ntroller|List; C |
|000044d0| 21 3d 20 4e 6f 6e 65 3b | 20 43 20 3d 20 43 2e 4e |!= None;| C = C.N|
|000044e0| 65 78 74 43 6f 6e 74 72 | 6f 6c 6c 65 72 29 0d 0a |extContr|oller)..|
|000044f0| 09 7b 0d 0a 09 09 56 20 | 3d 20 56 65 68 69 63 6c |.{....V |= Vehicl|
|00004500| 65 28 43 2e 50 61 77 6e | 29 3b 0d 0a 09 09 69 66 |e(C.Pawn|);....if|
|00004510| 20 28 20 56 20 21 3d 20 | 4e 6f 6e 65 20 26 26 20 | ( V != |None && |
|00004520| 56 20 21 3d 20 43 75 72 | 72 65 6e 74 54 61 72 67 |V != Cur|rentTarg|
|00004530| 65 74 20 26 26 20 49 73 | 54 61 72 67 65 74 52 65 |et && Is|TargetRe|
|00004540| 6c 65 76 61 6e 74 28 20 | 56 20 29 20 29 0d 0a 09 |levant( |V ) )...|
|00004550| 09 7b 0d 0a 09 09 09 44 | 69 73 74 20 3d 20 56 53 |.{.....D|ist = VS|
|00004560| 69 7a 65 28 4c 6f 63 61 | 74 69 6f 6e 20 2d 20 56 |ize(Loca|tion - V|
|00004570| 2e 4c 6f 63 61 74 69 6f | 6e 29 3b 0d 0a 09 09 09 |.Locatio|n);.....|
|00004580| 69 66 20 28 20 56 2e 49 | 73 41 28 27 41 53 56 65 |if ( V.I|sA('ASVe|
|00004590| 68 69 63 6c 65 5f 53 70 | 61 63 65 46 69 67 68 74 |hicle_Sp|aceFight|
|000045a0| 65 72 27 29 20 29 20 2f | 2f 20 54 61 72 67 65 74 |er') ) /|/ Target|
|000045b0| 20 53 70 61 63 65 46 69 | 67 68 74 65 72 73 20 66 | SpaceFi|ghters f|
|000045c0| 69 72 73 74 20 6f 76 65 | 72 20 74 75 72 72 65 74 |irst ove|r turret|
|000045d0| 73 2e 0d 0a 09 09 09 09 | 44 69 73 74 20 3d 20 44 |s.......|Dist = D|
|000045e0| 69 73 74 20 2a 20 30 2e | 36 37 3b 0d 0a 0d 0a 09 |ist * 0.|67;.....|
|000045f0| 09 09 69 66 20 28 20 28 | 42 65 73 74 56 20 3d 3d |..if ( (|BestV ==|
|00004600| 20 4e 6f 6e 65 20 7c 7c | 20 44 69 73 74 20 3c 20 | None ||| Dist < |
|00004610| 42 65 73 74 44 69 73 74 | 29 20 26 26 20 4c 69 6e |BestDist|) && Lin|
|00004620| 65 4f 66 53 69 67 68 74 | 54 6f 28 20 56 20 29 20 |eOfSight|To( V ) |
|00004630| 29 0d 0a 09 09 09 7b 0d | 0a 09 09 09 09 42 65 73 |).....{.|.....Bes|
|00004640| 74 56 09 09 3d 20 56 3b | 0d 0a 09 09 09 09 42 65 |tV..= V;|......Be|
|00004650| 73 74 44 69 73 74 09 3d | 20 44 69 73 74 3b 0d 0a |stDist.=| Dist;..|
|00004660| 09 09 09 7d 0d 0a 09 09 | 7d 0d 0a 09 7d 0d 0a 0d |...}....|}...}...|
|00004670| 0a 09 69 66 20 28 20 42 | 65 73 74 56 20 21 3d 20 |..if ( B|estV != |
|00004680| 4e 6f 6e 65 20 29 0d 0a | 09 09 53 65 72 76 65 72 |None )..|..Server|
|00004690| 53 65 74 54 61 72 67 65 | 74 28 20 42 65 73 74 56 |SetTarge|t( BestV|
|000046a0| 20 29 3b 0d 0a 7d 0d 0a | 0d 0a 0d 0a 2f 2f 3d 3d | );..}..|....//==|
|000046b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000046c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000046d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000046e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000046f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 0d 0a 2f 2f 20 |========|===..// |
|00004700| 43 6f 6c 6c 69 73 69 6f | 6e 0d 0a 2f 2f 3d 3d 3d |Collisio|n..//===|
|00004710| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004720| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004730| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004740| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0a 0d 0a 2f 2f |========|==....//|
|00004760| 20 64 65 61 6c 69 6e 67 | 20 64 61 6d 61 67 65 20 | dealing| damage |
|00004770| 62 61 73 65 64 20 6f 6e | 20 69 6d 70 61 63 74 20 |based on| impact |
|00004780| 6e 6f 72 6d 61 6c 20 61 | 6e 64 20 76 65 68 69 63 |normal a|nd vehic|
|00004790| 6c 65 20 76 65 6c 6f 63 | 69 74 79 0d 0a 73 69 6d |le veloc|ity..sim|
|000047a0| 75 6c 61 74 65 64 20 66 | 75 6e 63 74 69 6f 6e 20 |ulated f|unction |
|000047b0| 56 65 68 69 63 6c 65 43 | 6f 6c 6c 69 73 69 6f 6e |VehicleC|ollision|
|000047c0| 28 56 65 63 74 6f 72 20 | 48 69 74 4e 6f 72 6d 61 |(Vector |HitNorma|
|000047d0| 6c 2c 20 41 63 74 6f 72 | 20 4f 74 68 65 72 29 0d |l, Actor| Other).|
|000047e0| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 66 6c 6f 61 74 |.{...loc|al float|
|000047f0| 09 09 44 61 6d 61 67 65 | 3b 0d 0a 09 6c 6f 63 61 |..Damage|;...loca|
|00004800| 6c 20 66 6c 6f 61 74 09 | 09 4e 6f 72 6d 61 6c 53 |l float.|.NormalS|
|00004810| 70 65 65 64 3b 0d 0a 09 | 6c 6f 63 61 6c 20 50 61 |peed;...|local Pa|
|00004820| 77 6e 09 09 49 6e 73 74 | 3b 0d 0a 0d 0a 09 69 66 |wn..Inst|;.....if|
|00004830| 20 28 20 52 6f 6c 65 20 | 3c 20 52 6f 6c 65 5f 41 | ( Role |< Role_A|
|00004840| 75 74 68 6f 72 69 74 79 | 20 29 0d 0a 09 09 72 65 |uthority| )....re|
|00004850| 74 75 72 6e 3b 0d 0a 0d | 0a 09 4e 6f 72 6d 61 6c |turn;...|..Normal|
|00004860| 53 70 65 65 64 20 3d 20 | 41 62 73 28 20 56 65 6c |Speed = |Abs( Vel|
|00004870| 6f 63 69 74 79 20 44 6f | 74 20 48 69 74 4e 6f 72 |ocity Do|t HitNor|
|00004880| 6d 61 6c 20 29 3b 0d 0a | 09 44 61 6d 61 67 65 09 |mal );..|.Damage.|
|00004890| 09 3d 20 28 4e 6f 72 6d | 61 6c 53 70 65 65 64 2d |.= (Norm|alSpeed-|
|000048a0| 32 30 30 29 20 2f 20 31 | 30 30 2e 30 3b 0d 0a 0d |200) / 1|00.0;...|
|000048b0| 0a 09 69 66 20 28 20 44 | 61 6d 61 67 65 20 3e 20 |..if ( D|amage > |
|000048c0| 31 2e 66 20 29 0d 0a 09 | 7b 0d 0a 09 09 44 61 6d |1.f )...|{....Dam|
|000048d0| 61 67 65 09 20 20 20 20 | 2a 3d 20 44 61 6d 61 67 |age. |*= Damag|
|000048e0| 65 3b 0d 0a 09 09 49 6e | 73 74 09 09 3d 20 50 61 |e;....In|st..= Pa|
|000048f0| 77 6e 28 4f 74 68 65 72 | 29 3b 0d 0a 0d 0a 09 09 |wn(Other|);......|
|00004900| 2f 2f 20 46 6f 72 63 65 | 20 64 65 61 74 68 20 77 |// Force| death w|
|00004910| 69 74 68 20 6f 74 68 65 | 72 20 50 61 77 6e 27 73 |ith othe|r Pawn's|
|00004920| 20 63 6f 6c 6c 69 73 69 | 6f 6e 0d 0a 09 09 69 66 | collisi|on....if|
|00004930| 20 28 20 49 6e 73 74 69 | 67 61 74 6f 72 20 21 3d | ( Insti|gator !=|
|00004940| 20 4e 6f 6e 65 20 29 0d | 0a 09 09 09 44 61 6d 61 | None ).|....Dama|
|00004950| 67 65 20 2b 3d 20 48 65 | 61 6c 74 68 4d 61 78 3b |ge += He|althMax;|
|00004960| 0d 0a 0d 0a 09 09 54 61 | 6b 65 44 61 6d 61 67 65 |......Ta|keDamage|
|00004970| 28 44 61 6d 61 67 65 2c | 20 49 6e 73 74 2c 20 4c |(Damage,| Inst, L|
|00004980| 6f 63 61 74 69 6f 6e 2d | 48 69 74 4e 6f 72 6d 61 |ocation-|HitNorma|
|00004990| 6c 2a 43 6f 6c 6c 69 73 | 69 6f 6e 52 61 64 69 75 |l*Collis|ionRadiu|
|000049a0| 73 2c 20 48 69 74 4e 6f | 72 6d 61 6c 2a 44 61 6d |s, HitNo|rmal*Dam|
|000049b0| 61 67 65 2a 31 30 30 2e | 66 2c 20 4e 6f 6e 65 29 |age*100.|f, None)|
|000049c0| 3b 0d 0a 09 7d 0d 0a 09 | 65 6c 73 65 20 69 66 20 |;...}...|else if |
|000049d0| 28 20 56 53 69 7a 65 28 | 56 65 6c 6f 63 69 74 79 |( VSize(|Velocity|
|000049e0| 29 20 3c 20 31 30 30 20 | 29 0d 0a 09 09 54 61 6b |) < 100 |)....Tak|
|000049f0| 65 44 61 6d 61 67 65 28 | 64 65 66 61 75 6c 74 2e |eDamage(|default.|
|00004a00| 48 65 61 6c 74 68 2a 32 | 2c 20 53 65 6c 66 2c 20 |Health*2|, Self, |
|00004a10| 4c 6f 63 61 74 69 6f 6e | 2c 20 76 65 63 74 28 30 |Location|, vect(0|
|00004a20| 2c 30 2c 30 29 2c 20 4e | 6f 6e 65 29 3b 0d 0a 7d |,0,0), N|one);..}|
|00004a30| 0d 0a 0d 0a 73 69 6d 75 | 6c 61 74 65 64 20 66 75 |....simu|lated fu|
|00004a40| 6e 63 74 69 6f 6e 20 4c | 61 6e 64 65 64 28 20 76 |nction L|anded( v|
|00004a50| 65 63 74 6f 72 20 48 69 | 74 4e 6f 72 6d 61 6c 20 |ector Hi|tNormal |
|00004a60| 29 0d 0a 7b 0d 0a 09 56 | 65 68 69 63 6c 65 43 6f |)..{...V|ehicleCo|
|00004a70| 6c 6c 69 73 69 6f 6e 28 | 48 69 74 4e 6f 72 6d 61 |llision(|HitNorma|
|00004a80| 6c 2c 20 4e 6f 6e 65 29 | 3b 0d 0a 7d 0d 0a 0d 0a |l, None)|;..}....|
|00004a90| 73 69 6d 75 6c 61 74 65 | 64 20 66 75 6e 63 74 69 |simulate|d functi|
|00004aa0| 6f 6e 20 48 69 74 57 61 | 6c 6c 28 76 65 63 74 6f |on HitWa|ll(vecto|
|00004ab0| 72 20 48 69 74 4e 6f 72 | 6d 61 6c 2c 20 61 63 74 |r HitNor|mal, act|
|00004ac0| 6f 72 20 57 61 6c 6c 29 | 0d 0a 7b 0d 0a 09 56 65 |or Wall)|..{...Ve|
|00004ad0| 68 69 63 6c 65 43 6f 6c | 6c 69 73 69 6f 6e 28 48 |hicleCol|lision(H|
|00004ae0| 69 74 4e 6f 72 6d 61 6c | 2c 20 57 61 6c 6c 29 3b |itNormal|, Wall);|
|00004af0| 0d 0a 7d 0d 0a 0d 0a 73 | 69 6d 75 6c 61 74 65 64 |..}....s|imulated|
|00004b00| 20 73 69 6e 67 75 6c 61 | 72 20 66 75 6e 63 74 69 | singula|r functi|
|00004b10| 6f 6e 20 54 6f 75 63 68 | 28 41 63 74 6f 72 20 4f |on Touch|(Actor O|
|00004b20| 74 68 65 72 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |ther)..{|...local|
|00004b30| 20 56 65 63 74 6f 72 20 | 48 69 74 4e 6f 72 6d 61 | Vector |HitNorma|
|00004b40| 6c 3b 0d 0a 0d 0a 09 69 | 66 20 28 20 4f 74 68 65 |l;.....i|f ( Othe|
|00004b50| 72 21 3d 4e 6f 6e 65 20 | 26 26 20 21 4f 74 68 65 |r!=None |&& !Othe|
|00004b60| 72 2e 49 73 41 28 27 50 | 72 6f 6a 65 63 74 69 6c |r.IsA('P|rojectil|
|00004b70| 65 27 29 20 26 26 20 4f | 74 68 65 72 2e 62 42 6c |e') && O|ther.bBl|
|00004b80| 6f 63 6b 41 63 74 6f 72 | 73 20 29 0d 0a 09 7b 0d |ockActor|s )...{.|
|00004b90| 0a 09 09 48 69 74 4e 6f | 72 6d 61 6c 20 3d 20 4e |...HitNo|rmal = N|
|00004ba0| 6f 72 6d 61 6c 28 4c 6f | 63 61 74 69 6f 6e 20 2d |ormal(Lo|cation -|
|00004bb0| 20 4f 74 68 65 72 2e 4c | 6f 63 61 74 69 6f 6e 29 | Other.L|ocation)|
|00004bc0| 3b 0d 0a 09 09 56 65 68 | 69 63 6c 65 43 6f 6c 6c |;....Veh|icleColl|
|00004bd0| 69 73 69 6f 6e 28 48 69 | 74 4e 6f 72 6d 61 6c 2c |ision(Hi|tNormal,|
|00004be0| 20 4f 74 68 65 72 29 3b | 0d 0a 09 7d 0d 0a 7d 0d | Other);|...}..}.|
|00004bf0| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 75 6e |...simul|ated fun|
|00004c00| 63 74 69 6f 6e 20 42 75 | 6d 70 28 20 41 63 74 6f |ction Bu|mp( Acto|
|00004c10| 72 20 4f 74 68 65 72 20 | 29 0d 0a 7b 0d 0a 09 6c |r Other |)..{...l|
|00004c20| 6f 63 61 6c 20 56 65 63 | 74 6f 72 20 48 69 74 4e |ocal Vec|tor HitN|
|00004c30| 6f 72 6d 61 6c 3b 0d 0a | 0d 0a 09 69 66 20 28 20 |ormal;..|...if ( |
|00004c40| 4f 74 68 65 72 20 21 3d | 20 4e 6f 6e 65 20 26 26 |Other !=| None &&|
|00004c50| 20 21 4f 74 68 65 72 2e | 49 73 41 28 27 50 72 6f | !Other.|IsA('Pro|
|00004c60| 6a 65 63 74 69 6c 65 27 | 29 20 26 26 20 4f 74 68 |jectile'|) && Oth|
|00004c70| 65 72 2e 62 42 6c 6f 63 | 6b 41 63 74 6f 72 73 20 |er.bBloc|kActors |
|00004c80| 29 0d 0a 09 7b 0d 0a 09 | 09 48 69 74 4e 6f 72 6d |)...{...|.HitNorm|
|00004c90| 61 6c 20 3d 20 4e 6f 72 | 6d 61 6c 28 4c 6f 63 61 |al = Nor|mal(Loca|
|00004ca0| 74 69 6f 6e 20 2d 20 4f | 74 68 65 72 2e 4c 6f 63 |tion - O|ther.Loc|
|00004cb0| 61 74 69 6f 6e 29 3b 0d | 0a 09 09 56 65 68 69 63 |ation);.|...Vehic|
|00004cc0| 6c 65 43 6f 6c 6c 69 73 | 69 6f 6e 28 48 69 74 4e |leCollis|ion(HitN|
|00004cd0| 6f 72 6d 61 6c 2c 20 4f | 74 68 65 72 29 3b 0d 0a |ormal, O|ther);..|
|00004ce0| 09 7d 0d 0a 7d 0d 0a 0d | 0a 66 75 6e 63 74 69 6f |.}..}...|.functio|
|00004cf0| 6e 20 54 61 6b 65 44 61 | 6d 61 67 65 28 69 6e 74 |n TakeDa|mage(int|
|00004d00| 20 44 61 6d 61 67 65 2c | 20 50 61 77 6e 20 69 6e | Damage,| Pawn in|
|00004d10| 73 74 69 67 61 74 65 64 | 42 79 2c 20 56 65 63 74 |stigated|By, Vect|
|00004d20| 6f 72 20 68 69 74 6c 6f | 63 61 74 69 6f 6e 2c 20 |or hitlo|cation, |
|00004d30| 56 65 63 74 6f 72 20 6d | 6f 6d 65 6e 74 75 6d 2c |Vector m|omentum,|
|00004d40| 20 63 6c 61 73 73 3c 44 | 61 6d 61 67 65 54 79 70 | class<D|amageTyp|
|00004d50| 65 3e 20 64 61 6d 61 67 | 65 54 79 70 65 29 0d 0a |e> damag|eType)..|
|00004d60| 7b 0d 0a 09 69 66 20 28 | 20 62 48 75 6d 61 6e 53 |{...if (| bHumanS|
|00004d70| 68 69 70 20 26 26 20 28 | 4c 65 76 65 6c 2e 4e 65 |hip && (|Level.Ne|
|00004d80| 74 4d 6f 64 65 20 21 3d | 20 4e 4d 5f 43 6c 69 65 |tMode !=| NM_Clie|
|00004d90| 6e 74 29 20 29 0d 0a 09 | 7b 0d 0a 09 09 69 66 20 |nt) )...|{....if |
|00004da0| 28 20 4c 65 76 65 6c 2e | 4e 65 74 4d 6f 64 65 20 |( Level.|NetMode |
|00004db0| 3d 3d 20 4e 4d 5f 53 74 | 61 6e 64 61 6c 6f 6e 65 |== NM_St|andalone|
|00004dc0| 20 29 0d 0a 09 09 7b 0d | 0a 09 09 09 69 66 20 28 | )....{.|....if (|
|00004dd0| 20 28 49 6e 73 74 69 67 | 61 74 65 64 42 79 20 21 | (Instig|atedBy !|
|00004de0| 3d 20 4e 6f 6e 65 29 20 | 26 26 20 28 49 6e 73 74 |= None) |&& (Inst|
|00004df0| 69 67 61 74 65 64 42 79 | 20 21 3d 20 73 65 6c 66 |igatedBy| != self|
|00004e00| 29 20 26 26 20 28 21 62 | 54 68 75 6d 70 65 64 20 |) && (!b|Thumped |
|00004e10| 7c 7c 20 49 6e 73 74 69 | 67 61 74 65 64 42 79 2e ||| Insti|gatedBy.|
|00004e20| 62 53 74 61 74 69 6f 6e | 61 72 79 29 0d 0a 09 09 |bStation|ary)....|
|00004e30| 09 09 26 26 20 28 50 6c | 61 79 65 72 43 6f 6e 74 |..&& (Pl|ayerCont|
|00004e40| 72 6f 6c 6c 65 72 28 49 | 6e 73 74 69 67 61 74 6f |roller(I|nstigato|
|00004e50| 72 2e 43 6f 6e 74 72 6f | 6c 6c 65 72 29 20 3d 3d |r.Contro|ller) ==|
|00004e60| 20 4e 6f 6e 65 29 0d 0a | 09 09 09 09 26 26 20 28 | None)..|....&& (|
|00004e70| 50 6c 61 79 65 72 52 65 | 70 6c 69 63 61 74 69 6f |PlayerRe|plicatio|
|00004e80| 6e 49 6e 66 6f 20 21 3d | 20 4e 6f 6e 65 29 20 26 |nInfo !=| None) &|
|00004e90| 26 20 28 4c 65 76 65 6c | 2e 47 65 74 4c 6f 63 61 |& (Level|.GetLoca|
|00004ea0| 6c 50 6c 61 79 65 72 43 | 6f 6e 74 72 6f 6c 6c 65 |lPlayerC|ontrolle|
|00004eb0| 72 28 29 2e 50 6c 61 79 | 65 72 52 65 70 6c 69 63 |r().Play|erReplic|
|00004ec0| 61 74 69 6f 6e 49 6e 66 | 6f 2e 54 65 61 6d 20 21 |ationInf|o.Team !|
|00004ed0| 3d 20 50 6c 61 79 65 72 | 52 65 70 6c 69 63 61 74 |= Player|Replicat|
|00004ee0| 69 6f 6e 49 6e 66 6f 2e | 54 65 61 6d 29 20 29 0d |ionInfo.|Team) ).|
|00004ef0| 0a 09 09 09 09 44 61 6d | 61 67 65 20 2a 3d 20 30 |.....Dam|age *= 0|
|00004f00| 2e 33 3b 0d 0a 09 09 7d | 0d 0a 09 09 65 6c 73 65 |.3;....}|....else|
|00004f10| 20 69 66 20 28 20 44 65 | 61 74 68 6d 61 74 63 68 | if ( De|athmatch|
|00004f20| 28 4c 65 76 65 6c 2e 47 | 61 6d 65 29 2e 62 50 6c |(Level.G|ame).bPl|
|00004f30| 61 79 65 72 73 56 73 42 | 6f 74 73 20 29 0d 0a 09 |ayersVsB|ots )...|
|00004f40| 09 7b 0d 0a 09 09 09 69 | 66 20 28 20 28 49 6e 73 |.{.....i|f ( (Ins|
|00004f50| 74 69 67 61 74 65 64 42 | 79 20 21 3d 20 4e 6f 6e |tigatedB|y != Non|
|00004f60| 65 29 20 26 26 20 28 49 | 6e 73 74 69 67 61 74 65 |e) && (I|nstigate|
|00004f70| 64 42 79 20 21 3d 20 73 | 65 6c 66 29 0d 0a 09 09 |dBy != s|elf)....|
|00004f80| 09 09 26 26 20 28 50 6c | 61 79 65 72 43 6f 6e 74 |..&& (Pl|ayerCont|
|00004f90| 72 6f 6c 6c 65 72 28 49 | 6e 73 74 69 67 61 74 6f |roller(I|nstigato|
|00004fa0| 72 2e 43 6f 6e 74 72 6f | 6c 6c 65 72 29 20 3d 3d |r.Contro|ller) ==|
|00004fb0| 20 4e 6f 6e 65 29 20 29 | 0d 0a 09 09 09 09 44 61 | None) )|......Da|
|00004fc0| 6d 61 67 65 20 2a 3d 20 | 30 2e 37 3b 0d 0a 09 09 |mage *= |0.7;....|
|00004fd0| 7d 0d 0a 09 7d 0d 0a 0d | 0a 09 2f 2f 20 55 73 69 |}...}...|..// Usi|
|00004fe0| 6e 67 20 48 69 74 46 78 | 54 69 63 6b 65 72 20 74 |ng HitFx|Ticker t|
|00004ff0| 6f 20 70 6c 61 79 20 76 | 61 72 69 6f 75 73 20 63 |o play v|arious c|
|00005000| 6c 69 65 6e 74 20 73 69 | 64 65 20 64 65 61 74 68 |lient si|de death|
|00005010| 73 2e 2e 2e 0d 0a 09 69 | 66 20 28 20 69 6e 73 74 |s......i|f ( inst|
|00005020| 69 67 61 74 65 64 42 79 | 20 3d 3d 20 4e 6f 6e 65 |igatedBy| == None|
|00005030| 20 29 0d 0a 09 09 48 69 | 74 46 78 54 69 63 6b 65 | )....Hi|tFxTicke|
|00005040| 72 20 3d 20 30 3b 20 2f | 2f 54 65 61 72 4f 66 66 |r = 0; /|/TearOff|
|00005050| 44 65 61 74 68 20 3d 20 | 44 65 61 74 68 5f 47 65 |Death = |Death_Ge|
|00005060| 6f 6d 65 74 72 79 3b 09 | 2f 2f 20 67 65 6f 6d 65 |ometry;.|// geome|
|00005070| 74 72 79 20 63 6f 6c 6c | 69 73 69 6f 6e 0d 0a 09 |try coll|ision...|
|00005080| 65 6c 73 65 20 69 66 20 | 28 20 69 6e 73 74 69 67 |else if |( instig|
|00005090| 61 74 65 64 42 79 20 3d | 3d 20 53 65 6c 66 20 29 |atedBy =|= Self )|
|000050a0| 0d 0a 09 09 48 69 74 46 | 78 54 69 63 6b 65 72 20 |....HitF|xTicker |
|000050b0| 3d 20 31 3b 20 2f 2f 54 | 65 61 72 4f 66 66 44 65 |= 1; //T|earOffDe|
|000050c0| 61 74 68 20 3d 20 44 65 | 61 74 68 5f 53 65 6c 66 |ath = De|ath_Self|
|000050d0| 3b 09 09 2f 2f 20 73 75 | 69 63 69 64 65 0d 0a 09 |;..// su|icide...|
|000050e0| 65 6c 73 65 0d 0a 09 09 | 48 69 74 46 78 54 69 63 |else....|HitFxTic|
|000050f0| 6b 65 72 20 3d 20 32 3b | 20 2f 2f 54 65 61 72 4f |ker = 2;| //TearO|
|00005100| 66 66 44 65 61 74 68 20 | 3d 20 44 65 61 74 68 5f |ffDeath |= Death_|
|00005110| 50 61 77 6e 3b 09 09 2f | 2f 20 6b 69 6c 6c 65 64 |Pawn;../|/ killed|
|00005120| 20 62 79 20 70 6c 61 79 | 65 72 0d 0a 0d 0a 09 69 | by play|er.....i|
|00005130| 66 20 28 20 52 6f 6c 65 | 20 3d 3d 20 52 6f 6c 65 |f ( Role| == Role|
|00005140| 5f 41 75 74 68 6f 72 69 | 74 79 20 29 0d 0a 09 09 |_Authori|ty )....|
|00005150| 44 6f 53 68 69 65 6c 64 | 45 66 66 65 63 74 28 48 |DoShield|Effect(H|
|00005160| 69 74 4c 6f 63 61 74 69 | 6f 6e 2c 20 4e 6f 72 6d |itLocati|on, Norm|
|00005170| 61 6c 28 4c 6f 63 61 74 | 69 6f 6e 20 2d 20 48 69 |al(Locat|ion - Hi|
|00005180| 74 4c 6f 63 61 74 69 6f | 6e 29 20 29 3b 0d 0a 0d |tLocatio|n) );...|
|00005190| 0a 09 73 75 70 65 72 2e | 54 61 6b 65 44 61 6d 61 |..super.|TakeDama|
|000051a0| 67 65 28 44 61 6d 61 67 | 65 2c 20 69 6e 73 74 69 |ge(Damag|e, insti|
|000051b0| 67 61 74 65 64 42 79 2c | 20 68 69 74 6c 6f 63 61 |gatedBy,| hitloca|
|000051c0| 74 69 6f 6e 2c 20 6d 6f | 6d 65 6e 74 75 6d 2c 20 |tion, mo|mentum, |
|000051d0| 64 61 6d 61 67 65 54 79 | 70 65 29 3b 0d 0a 7d 0d |damageTy|pe);..}.|
|000051e0| 0a 0d 0a 0d 0a 2f 2f 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.....//=|========|
|000051f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005200| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005210| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005220| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005230| 3d 3d 3d 3d 0d 0a 2f 2f | 20 46 58 0d 0a 2f 2f 3d |====..//| FX..//=|
|00005240| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005250| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005260| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005270| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005280| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 0a 0d 0a |========|====....|
|00005290| 66 75 6e 63 74 69 6f 6e | 20 44 6f 53 68 69 65 6c |function| DoShiel|
|000052a0| 64 45 66 66 65 63 74 28 | 76 65 63 74 6f 72 20 48 |dEffect(|vector H|
|000052b0| 69 74 4c 6f 63 61 74 69 | 6f 6e 2c 20 76 65 63 74 |itLocati|on, vect|
|000052c0| 6f 72 20 48 69 74 4e 6f | 72 6d 61 6c 29 0d 0a 7b |or HitNo|rmal)..{|
|000052d0| 0d 0a 09 6c 6f 63 61 6c | 20 41 63 74 6f 72 20 53 |...local| Actor S|
|000052e0| 68 69 65 6c 64 45 66 66 | 65 63 74 3b 0d 0a 0d 0a |hieldEff|ect;....|
|000052f0| 09 69 66 20 28 20 54 65 | 61 6d 20 3e 20 31 20 29 |.if ( Te|am > 1 )|
|00005300| 0d 0a 09 09 72 65 74 75 | 72 6e 3b 0d 0a 0d 0a 09 |....retu|rn;.....|
|00005310| 69 66 20 28 20 45 66 66 | 65 63 74 49 73 52 65 6c |if ( Eff|ectIsRel|
|00005320| 65 76 61 6e 74 28 48 69 | 74 4c 6f 63 61 74 69 6f |evant(Hi|tLocatio|
|00005330| 6e 2c 20 74 72 75 65 29 | 20 26 26 20 4e 65 78 74 |n, true)| && Next|
|00005340| 53 68 69 65 6c 64 54 69 | 6d 65 20 3c 20 4c 65 76 |ShieldTi|me < Lev|
|00005350| 65 6c 2e 54 69 6d 65 53 | 65 63 6f 6e 64 73 20 29 |el.TimeS|econds )|
|00005360| 0d 0a 09 7b 0d 0a 09 09 | 4e 65 78 74 53 68 69 65 |...{....|NextShie|
|00005370| 6c 64 54 69 6d 65 20 3d | 20 4c 65 76 65 6c 2e 54 |ldTime =| Level.T|
|00005380| 69 6d 65 53 65 63 6f 6e | 64 73 20 2b 20 30 2e 31 |imeSecon|ds + 0.1|
|00005390| 3b 0d 0a 09 09 53 68 69 | 65 6c 64 45 66 66 65 63 |;....Shi|eldEffec|
|000053a0| 74 20 3d 20 53 70 61 77 | 6e 28 47 65 6e 65 72 69 |t = Spaw|n(Generi|
|000053b0| 63 53 68 69 65 6c 64 45 | 66 66 65 63 74 5b 54 65 |cShieldE|ffect[Te|
|000053c0| 61 6d 5d 2c 20 53 65 6c | 66 2c 2c 20 48 69 74 4c |am], Sel|f,, HitL|
|000053d0| 6f 63 61 74 69 6f 6e 2c | 20 72 6f 74 61 74 6f 72 |ocation,| rotator|
|000053e0| 28 2d 48 69 74 4e 6f 72 | 6d 61 6c 29 29 3b 0d 0a |(-HitNor|mal));..|
|000053f0| 0d 0a 09 09 69 66 20 28 | 20 53 68 69 65 6c 64 45 |....if (| ShieldE|
|00005400| 66 66 65 63 74 20 21 3d | 20 4e 6f 6e 65 20 29 0d |ffect !=| None ).|
|00005410| 0a 09 09 09 53 68 69 65 | 6c 64 45 66 66 65 63 74 |....Shie|ldEffect|
|00005420| 2e 53 65 74 42 61 73 65 | 28 20 53 65 6c 66 20 29 |.SetBase|( Self )|
|00005430| 3b 0d 0a 09 7d 0d 0a 7d | 0d 0a 0d 0a 65 76 65 6e |;...}..}|....even|
|00005440| 74 20 41 6e 69 6d 45 6e | 64 28 20 69 6e 74 20 43 |t AnimEn|d( int C|
|00005450| 68 61 6e 6e 65 6c 20 29 | 0d 0a 7b 0d 0a 09 44 69 |hannel )|..{...Di|
|00005460| 73 61 62 6c 65 28 27 41 | 6e 69 6d 45 6e 64 27 29 |sable('A|nimEnd')|
|00005470| 3b 0d 0a 09 62 47 65 61 | 72 55 70 20 3d 20 74 72 |;...bGea|rUp = tr|
|00005480| 75 65 3b 0d 0a 0d 0a 09 | 69 66 20 28 20 4c 65 76 |ue;.....|if ( Lev|
|00005490| 65 6c 2e 4e 65 74 4d 6f | 64 65 20 21 3d 20 4e 4d |el.NetMo|de != NM|
|000054a0| 5f 44 65 64 69 63 61 74 | 65 64 53 65 72 76 65 72 |_Dedicat|edServer|
|000054b0| 20 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 20 48 | )...{..|..if ( H|
|000054c0| 61 73 41 6e 69 6d 28 46 | 6c 79 69 6e 67 41 6e 69 |asAnim(F|lyingAni|
|000054d0| 6d 29 20 29 0d 0a 09 09 | 09 50 6c 61 79 41 6e 69 |m) )....|.PlayAni|
|000054e0| 6d 28 20 46 6c 79 69 6e | 67 41 6e 69 6d 2c 20 30 |m( Flyin|gAnim, 0|
|000054f0| 2e 30 30 30 31 20 29 3b | 0d 0a 09 09 53 74 6f 70 |.0001 );|....Stop|
|00005500| 41 6e 69 6d 61 74 69 6e | 67 28 29 3b 0d 0a 09 09 |Animatin|g();....|
|00005510| 54 69 6d 65 72 28 29 3b | 09 2f 2f 20 43 61 6c 6c |Timer();|.// Call|
|00005520| 20 54 69 6d 65 72 20 74 | 6f 20 61 64 6a 75 73 74 | Timer t|o adjust|
|00005530| 20 46 58 0d 0a 09 7d 0d | 0a 7d 0d 0a 0d 0a 73 69 | FX...}.|.}....si|
|00005540| 6d 75 6c 61 74 65 64 20 | 66 75 6e 63 74 69 6f 6e |mulated |function|
|00005550| 20 41 64 6a 75 73 74 46 | 58 28 29 3b 0d 0a 0d 0a | AdjustF|X();....|
|00005560| 73 69 6d 75 6c 61 74 65 | 64 20 66 75 6e 63 74 69 |simulate|d functi|
|00005570| 6f 6e 20 54 69 6d 65 72 | 28 29 0d 0a 7b 0d 0a 09 |on Timer|()..{...|
|00005580| 6c 6f 63 61 6c 20 66 6c | 6f 61 74 09 09 09 4e 65 |local fl|oat...Ne|
|00005590| 77 54 69 6d 65 72 52 61 | 74 65 3b 0d 0a 0d 0a 09 |wTimerRa|te;.....|
|000055a0| 2f 2f 20 41 64 6a 75 73 | 74 20 46 58 0d 0a 09 41 |// Adjus|t FX...A|
|000055b0| 64 6a 75 73 74 46 58 28 | 29 3b 0d 0a 0d 0a 09 2f |djustFX(|);...../|
|000055c0| 2f 20 55 70 64 61 74 65 | 20 46 72 65 71 75 65 6e |/ Update| Frequen|
|000055d0| 63 79 20 28 66 6f 72 20 | 53 75 70 65 72 20 48 69 |cy (for |Super Hi|
|000055e0| 67 68 20 64 65 74 61 69 | 6c 73 29 0d 0a 09 69 66 |gh detai|ls)...if|
|000055f0| 20 28 20 49 73 4c 6f 63 | 61 6c 6c 79 43 6f 6e 74 | ( IsLoc|allyCont|
|00005600| 72 6f 6c 6c 65 64 28 29 | 20 29 0d 0a 09 09 4e 65 |rolled()| )....Ne|
|00005610| 77 54 69 6d 65 72 52 61 | 74 65 20 3d 20 30 2e 30 |wTimerRa|te = 0.0|
|00005620| 32 3b 0d 0a 09 65 6c 73 | 65 20 69 66 20 28 20 45 |2;...els|e if ( E|
|00005630| 66 66 65 63 74 49 73 52 | 65 6c 65 76 61 6e 74 28 |ffectIsR|elevant(|
|00005640| 4c 6f 63 61 74 69 6f 6e | 2c 20 66 61 6c 73 65 29 |Location|, false)|
|00005650| 20 29 20 2f 2f 20 69 66 | 20 74 68 69 73 20 70 61 | ) // if| this pa|
|00005660| 77 6e 20 69 73 20 72 65 | 6c 65 76 61 6e 74 20 74 |wn is re|levant t|
|00005670| 6f 20 6c 6f 63 61 6c 20 | 70 6c 61 79 65 72 0d 0a |o local |player..|
|00005680| 09 09 4e 65 77 54 69 6d | 65 72 52 61 74 65 20 3d |..NewTim|erRate =|
|00005690| 20 30 2e 30 34 3b 0d 0a | 09 65 6c 73 65 0d 0a 09 | 0.04;..|.else...|
|000056a0| 09 4e 65 77 54 69 6d 65 | 72 52 61 74 65 20 3d 20 |.NewTime|rRate = |
|000056b0| 30 2e 30 38 3b 09 09 2f | 2f 20 4e 6f 74 20 72 65 |0.08;../|/ Not re|
|000056c0| 6c 65 76 61 6e 74 0d 0a | 0d 0a 09 69 66 20 28 20 |levant..|...if ( |
|000056d0| 4c 65 76 65 6c 2e 44 65 | 74 61 69 6c 4d 6f 64 65 |Level.De|tailMode|
|000056e0| 20 3d 3d 20 44 4d 5f 48 | 69 67 68 20 29 20 2f 2f | == DM_H|igh ) //|
|000056f0| 20 48 69 67 68 20 64 65 | 74 61 69 6c 73 0d 0a 09 | High de|tails...|
|00005700| 09 4e 65 77 54 69 6d 65 | 72 52 61 74 65 20 2b 3d |.NewTime|rRate +=|
|00005710| 20 30 2e 30 32 3b 0d 0a | 09 65 6c 73 65 20 69 66 | 0.02;..|.else if|
|00005720| 20 28 20 4c 65 76 65 6c | 2e 44 65 74 61 69 6c 4d | ( Level|.DetailM|
|00005730| 6f 64 65 20 3d 3d 20 44 | 4d 5f 4c 6f 77 20 29 20 |ode == D|M_Low ) |
|00005740| 2f 2f 20 4c 6f 77 20 64 | 65 74 61 69 6c 73 0d 0a |// Low d|etails..|
|00005750| 09 09 4e 65 77 54 69 6d | 65 72 52 61 74 65 20 2b |..NewTim|erRate +|
|00005760| 3d 20 30 2e 30 34 3b 0d | 0a 0d 0a 09 53 65 74 54 |= 0.04;.|....SetT|
|00005770| 69 6d 65 72 28 4e 65 77 | 54 69 6d 65 72 52 61 74 |imer(New|TimerRat|
|00005780| 65 2c 20 66 61 6c 73 65 | 29 3b 0d 0a 7d 0d 0a 0d |e, false|);..}...|
|00005790| 0a 0d 0a 73 69 6d 75 6c | 61 74 65 64 20 66 75 6e |...simul|ated fun|
|000057a0| 63 74 69 6f 6e 20 56 65 | 63 74 6f 72 20 47 65 74 |ction Ve|ctor Get|
|000057b0| 52 6f 63 6b 65 74 53 70 | 61 77 6e 4c 6f 63 61 74 |RocketSp|awnLocat|
|000057c0| 69 6f 6e 28 29 0d 0a 7b | 0d 0a 09 72 65 74 75 72 |ion()..{|...retur|
|000057d0| 6e 20 52 6f 63 6b 65 74 | 4f 66 66 73 65 74 3b 0d |n Rocket|Offset;.|
|000057e0| 0a 7d 0d 0a 0d 0a 0d 0a | 73 69 6d 75 6c 61 74 65 |.}......|simulate|
|000057f0| 64 20 66 69 6e 61 6c 20 | 66 75 6e 63 74 69 6f 6e |d final |function|
|00005800| 20 4d 79 52 61 6e 64 53 | 70 69 6e 28 66 6c 6f 61 | MyRandS|pin(floa|
|00005810| 74 20 73 70 69 6e 52 61 | 74 65 29 0d 0a 7b 0d 0a |t spinRa|te)..{..|
|00005820| 09 44 65 73 69 72 65 64 | 52 6f 74 61 74 69 6f 6e |.Desired|Rotation|
|00005830| 09 09 3d 20 52 6f 74 52 | 61 6e 64 28 74 72 75 65 |..= RotR|and(true|
|00005840| 29 3b 0d 0a 0d 0a 09 52 | 6f 74 61 74 69 6f 6e 52 |);.....R|otationR|
|00005850| 61 74 65 2e 59 61 77 09 | 3d 20 30 3b 0d 0a 09 52 |ate.Yaw.|= 0;...R|
|00005860| 6f 74 61 74 69 6f 6e 52 | 61 74 65 2e 50 69 74 63 |otationR|ate.Pitc|
|00005870| 68 09 3d 20 4d 61 78 28 | 20 46 52 61 6e 64 28 29 |h.= Max(| FRand()|
|00005880| 2a 53 70 69 6e 52 61 74 | 65 2f 38 2c 20 53 70 69 |*SpinRat|e/8, Spi|
|00005890| 6e 52 61 74 65 20 2f 20 | 33 30 20 29 3b 0d 0a 09 |nRate / |30 );...|
|000058a0| 52 6f 74 61 74 69 6f 6e | 52 61 74 65 2e 52 6f 6c |Rotation|Rate.Rol|
|000058b0| 6c 09 3d 20 4d 61 78 28 | 20 46 52 61 6e 64 28 29 |l.= Max(| FRand()|
|000058c0| 2a 53 70 69 6e 52 61 74 | 65 2c 20 53 70 69 6e 52 |*SpinRat|e, SpinR|
|000058d0| 61 74 65 20 2f 20 38 20 | 29 3b 0d 0a 0d 0a 09 69 |ate / 8 |);.....i|
|000058e0| 66 20 28 20 46 52 61 6e | 64 28 29 20 3e 20 30 2e |f ( FRan|d() > 0.|
|000058f0| 35 20 29 0d 0a 09 09 52 | 6f 74 61 74 69 6f 6e 52 |5 )....R|otationR|
|00005900| 61 74 65 2e 50 69 74 63 | 68 20 3d 20 2d 52 6f 74 |ate.Pitc|h = -Rot|
|00005910| 61 74 69 6f 6e 52 61 74 | 65 2e 50 69 74 63 68 3b |ationRat|e.Pitch;|
|00005920| 0d 0a 0d 0a 09 69 66 20 | 28 20 46 52 61 6e 64 28 |.....if |( FRand(|
|00005930| 29 20 3e 20 30 2e 35 20 | 29 0d 0a 09 09 52 6f 74 |) > 0.5 |)....Rot|
|00005940| 61 74 69 6f 6e 52 61 74 | 65 2e 52 6f 6c 6c 20 3d |ationRat|e.Roll =|
|00005950| 20 2d 52 6f 74 61 74 69 | 6f 6e 52 61 74 65 2e 52 | -Rotati|onRate.R|
|00005960| 6f 6c 6c 3b 0d 0a 7d 0d | 0a 0d 0a 0d 0a 2f 2f 20 |oll;..}.|.....// |
|00005970| 53 70 61 77 6e 20 45 78 | 70 6c 6f 73 69 6f 6e 20 |Spawn Ex|plosion |
|00005980| 46 58 0d 0a 73 69 6d 75 | 6c 61 74 65 64 20 66 75 |FX..simu|lated fu|
|00005990| 6e 63 74 69 6f 6e 20 45 | 78 70 6c 6f 64 65 28 20 |nction E|xplode( |
|000059a0| 76 65 63 74 6f 72 20 48 | 69 74 4c 6f 63 61 74 69 |vector H|itLocati|
|000059b0| 6f 6e 2c 20 76 65 63 74 | 6f 72 20 48 69 74 4e 6f |on, vect|or HitNo|
|000059c0| 72 6d 61 6c 20 29 0d 0a | 7b 0d 0a 09 69 66 20 28 |rmal )..|{...if (|
|000059d0| 20 53 6d 6f 6b 65 54 72 | 61 69 6c 20 21 3d 20 4e | SmokeTr|ail != N|
|000059e0| 6f 6e 65 20 29 0d 0a 09 | 7b 0d 0a 09 09 53 6d 6f |one )...|{....Smo|
|000059f0| 6b 65 54 72 61 69 6c 2e | 4b 69 6c 6c 28 29 3b 0d |keTrail.|Kill();.|
|00005a00| 0a 09 09 53 6d 6f 6b 65 | 54 72 61 69 6c 20 3d 20 |...Smoke|Trail = |
|00005a10| 4e 6f 6e 65 3b 0d 0a 09 | 7d 0d 0a 0d 0a 09 69 66 |None;...|}.....if|
|00005a20| 20 28 20 54 72 61 69 6c | 45 6d 69 74 74 65 72 20 | ( Trail|Emitter |
|00005a30| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 7b 0d 0a 09 |!= None |)...{...|
|00005a40| 09 54 72 61 69 6c 45 6d | 69 74 74 65 72 2e 4b 69 |.TrailEm|itter.Ki|
|00005a50| 6c 6c 28 29 3b 0d 0a 09 | 09 54 72 61 69 6c 45 6d |ll();...|.TrailEm|
|00005a60| 69 74 74 65 72 20 3d 20 | 4e 6f 6e 65 3b 0d 0a 09 |itter = |None;...|
|00005a70| 7d 0d 0a 0d 0a 09 62 44 | 79 6e 61 6d 69 63 4c 69 |}.....bD|ynamicLi|
|00005a80| 67 68 74 20 3d 20 66 61 | 6c 73 65 3b 0d 0a 09 4c |ght = fa|lse;...L|
|00005a90| 69 67 68 74 54 79 70 65 | 20 3d 20 4c 54 5f 4e 6f |ightType| = LT_No|
|00005aa0| 6e 65 3b 0d 0a 0d 0a 09 | 2f 2f 69 66 20 28 20 48 |ne;.....|//if ( H|
|00005ab0| 69 74 4e 6f 72 6d 61 6c | 20 21 3d 20 76 65 63 74 |itNormal| != vect|
|00005ac0| 28 30 2c 30 2c 30 29 20 | 29 0d 0a 09 2f 2f 09 53 |(0,0,0) |)...//.S|
|00005ad0| 65 74 52 6f 74 61 74 69 | 6f 6e 28 20 52 6f 74 61 |etRotati|on( Rota|
|00005ae0| 74 6f 72 28 2d 48 69 74 | 4e 6f 72 6d 61 6c 29 20 |tor(-Hit|Normal) |
|00005af0| 29 3b 20 2f 2f 20 48 61 | 63 6b 20 74 6f 20 70 6f |); // Ha|ck to po|
|00005b00| 73 69 74 69 6f 6e 20 63 | 61 6d 65 72 61 20 77 65 |sition c|amera we|
|00005b10| 6c 6c 2e 2e 0d 0a 0d 0a | 09 69 66 20 28 20 4c 65 |ll......|.if ( Le|
|00005b20| 76 65 6c 2e 4e 65 74 4d | 6f 64 65 20 21 3d 20 4e |vel.NetM|ode != N|
|00005b30| 4d 5f 44 65 64 69 63 61 | 74 65 64 53 65 72 76 65 |M_Dedica|tedServe|
|00005b40| 72 20 29 0d 0a 09 09 45 | 78 70 6c 6f 73 69 6f 6e |r )....E|xplosion|
|00005b50| 45 66 66 65 63 74 20 3d | 20 53 70 61 77 6e 28 63 |Effect =| Spawn(c|
|00005b60| 6c 61 73 73 27 46 58 5f | 53 70 61 63 65 46 69 67 |lass'FX_|SpaceFig|
|00005b70| 68 74 65 72 5f 45 78 70 | 6c 6f 73 69 6f 6e 27 2c |hter_Exp|losion',|
|00005b80| 20 53 65 6c 66 2c 2c 20 | 48 69 74 4c 6f 63 61 74 | Self,, |HitLocat|
|00005b90| 69 6f 6e 2c 20 52 6f 74 | 61 74 69 6f 6e 29 3b 0d |ion, Rot|ation);.|
|00005ba0| 0a 7d 0d 0a 0d 0a 0d 0a | 73 69 6d 75 6c 61 74 65 |.}......|simulate|
|00005bb0| 64 20 65 76 65 6e 74 20 | 50 6c 61 79 44 79 69 6e |d event |PlayDyin|
|00005bc0| 67 28 63 6c 61 73 73 3c | 44 61 6d 61 67 65 54 79 |g(class<|DamageTy|
|00005bd0| 70 65 3e 20 44 61 6d 61 | 67 65 54 79 70 65 2c 20 |pe> Dama|geType, |
|00005be0| 76 65 63 74 6f 72 20 48 | 69 74 4c 6f 63 29 0d 0a |vector H|itLoc)..|
|00005bf0| 7b 0d 0a 09 6c 6f 63 61 | 6c 20 76 65 63 74 6f 72 |{...loca|l vector|
|00005c00| 09 48 69 74 4e 6f 72 6d | 61 6c 3b 0d 0a 0d 0a 09 |.HitNorm|al;.....|
|00005c10| 69 66 20 28 20 4c 65 76 | 65 6c 2e 47 61 6d 65 20 |if ( Lev|el.Game |
|00005c20| 21 3d 20 4e 6f 6e 65 20 | 29 0d 0a 09 09 4c 65 76 |!= None |)....Lev|
|00005c30| 65 6c 2e 47 61 6d 65 2e | 44 69 73 63 61 72 64 49 |el.Game.|DiscardI|
|00005c40| 6e 76 65 6e 74 6f 72 79 | 28 20 53 65 6c 66 20 29 |nventory|( Self )|
|00005c50| 3b 0d 0a 0d 0a 09 2f 2f | 20 4d 61 6b 65 20 73 75 |;.....//| Make su|
|00005c60| 72 65 20 70 6c 61 79 65 | 72 20 63 6f 6e 74 72 6f |re playe|r contro|
|00005c70| 6c 6c 65 72 20 69 73 20 | 61 63 74 75 61 6c 6c 79 |ller is |actually|
|00005c80| 20 70 6f 73 73 65 73 73 | 69 6e 67 20 74 68 65 20 | possess|ing the |
|00005c90| 76 65 68 69 63 6c 65 2e | 2e 20 28 73 69 6e 63 65 |vehicle.|. (since|
|00005ca0| 20 77 65 20 66 6f 72 63 | 65 64 20 69 74 20 69 6e | we forc|ed it in|
|00005cb0| 20 43 6c 69 65 6e 74 4b | 44 72 69 76 65 72 45 6e | ClientK|DriverEn|
|00005cc0| 74 65 72 29 0d 0a 09 69 | 66 20 28 20 50 6c 61 79 |ter)...i|f ( Play|
|00005cd0| 65 72 43 6f 6e 74 72 6f | 6c 6c 65 72 28 43 6f 6e |erContro|ller(Con|
|00005ce0| 74 72 6f 6c 6c 65 72 29 | 20 21 3d 20 4e 6f 6e 65 |troller)| != None|
|00005cf0| 20 26 26 20 50 6c 61 79 | 65 72 43 6f 6e 74 72 6f | && Play|erContro|
|00005d00| 6c 6c 65 72 28 43 6f 6e | 74 72 6f 6c 6c 65 72 29 |ller(Con|troller)|
|00005d10| 2e 50 61 77 6e 20 21 3d | 20 53 65 6c 66 20 29 0d |.Pawn !=| Self ).|
|00005d20| 0a 09 09 43 6f 6e 74 72 | 6f 6c 6c 65 72 20 3d 20 |...Contr|oller = |
|00005d30| 4e 6f 6e 65 3b 0d 0a 0d | 0a 09 69 66 20 28 20 50 |None;...|..if ( P|
|00005d40| 6c 61 79 65 72 43 6f 6e | 74 72 6f 6c 6c 65 72 28 |layerCon|troller(|
|00005d50| 43 6f 6e 74 72 6f 6c 6c | 65 72 29 20 21 3d 20 4e |Controll|er) != N|
|00005d60| 6f 6e 65 20 29 0d 0a 09 | 7b 0d 0a 09 09 50 6c 61 |one )...|{....Pla|
|00005d70| 79 65 72 43 6f 6e 74 72 | 6f 6c 6c 65 72 28 43 6f |yerContr|oller(Co|
|00005d80| 6e 74 72 6f 6c 6c 65 72 | 29 2e 53 65 74 56 69 65 |ntroller|).SetVie|
|00005d90| 77 54 61 72 67 65 74 28 | 20 53 65 6c 66 20 29 3b |wTarget(| Self );|
|00005da0| 0d 0a 09 09 44 65 73 74 | 72 6f 79 50 72 65 76 43 |....Dest|royPrevC|
|00005db0| 6f 6e 74 72 6f 6c 6c 65 | 72 20 3d 20 43 6f 6e 74 |ontrolle|r = Cont|
|00005dc0| 72 6f 6c 6c 65 72 3b 0d | 0a 09 7d 0d 0a 0d 0a 09 |roller;.|..}.....|
|00005dd0| 62 43 61 6e 54 65 6c 65 | 70 6f 72 74 20 3d 20 66 |bCanTele|port = f|
|00005de0| 61 6c 73 65 3b 0d 0a 09 | 62 52 65 70 6c 69 63 61 |alse;...|bReplica|
|00005df0| 74 65 4d 6f 76 65 6d 65 | 6e 74 20 3d 20 66 61 6c |teMoveme|nt = fal|
|00005e00| 73 65 3b 0d 0a 09 62 54 | 65 61 72 4f 66 66 20 3d |se;...bT|earOff =|
|00005e10| 20 74 72 75 65 3b 0d 0a | 09 62 50 6c 61 79 65 64 | true;..|.bPlayed|
|00005e20| 44 65 61 74 68 20 3d 20 | 74 72 75 65 3b 0d 0a 0d |Death = |true;...|
|00005e30| 0a 09 69 66 20 28 20 48 | 69 74 46 78 54 69 63 6b |..if ( H|itFxTick|
|00005e40| 65 72 20 3d 3d 20 32 20 | 29 0d 0a 09 7b 0d 0a 09 |er == 2 |)...{...|
|00005e50| 09 53 68 6f 74 44 6f 77 | 6e 52 6f 74 61 74 69 6f |.ShotDow|nRotatio|
|00005e60| 6e 20 3d 20 52 6f 74 61 | 74 69 6f 6e 3b 0d 0a 09 |n = Rota|tion;...|
|00005e70| 09 69 66 20 28 20 4c 65 | 76 65 6c 2e 4e 65 74 4d |.if ( Le|vel.NetM|
|00005e80| 6f 64 65 20 21 3d 20 4e | 4d 5f 44 65 64 69 63 61 |ode != N|M_Dedica|
|00005e90| 74 65 64 53 65 72 76 65 | 72 20 29 0d 0a 09 09 7b |tedServe|r )....{|
|00005ea0| 0d 0a 09 09 09 53 6d 6f | 6b 65 54 72 61 69 6c 20 |.....Smo|keTrail |
|00005eb0| 3d 20 53 70 61 77 6e 28 | 53 68 6f 74 44 6f 77 6e |= Spawn(|ShotDown|
|00005ec0| 46 58 43 6c 61 73 73 2c | 20 53 65 6c 66 2c 2c 20 |FXClass,| Self,, |
|00005ed0| 4c 6f 63 61 74 69 6f 6e | 29 3b 0d 0a 09 09 09 69 |Location|);.....i|
|00005ee0| 66 20 28 20 53 6d 6f 6b | 65 54 72 61 69 6c 20 21 |f ( Smok|eTrail !|
|00005ef0| 3d 20 4e 6f 6e 65 20 29 | 0d 0a 09 09 09 09 53 6d |= None )|......Sm|
|00005f00| 6f 6b 65 54 72 61 69 6c | 2e 53 65 74 42 61 73 65 |okeTrail|.SetBase|
|00005f10| 28 20 53 65 6c 66 20 29 | 3b 0d 0a 09 09 7d 0d 0a |( Self )|;....}..|
|00005f20| 09 09 47 6f 74 6f 53 74 | 61 74 65 28 27 53 68 6f |..GotoSt|ate('Sho|
|00005f30| 74 44 6f 77 6e 27 29 3b | 0d 0a 09 7d 0d 0a 09 65 |tDown');|...}...e|
|00005f40| 6c 73 65 0d 0a 09 7b 0d | 0a 09 09 69 66 20 28 20 |lse...{.|...if ( |
|00005f50| 48 69 74 46 78 54 69 63 | 6b 65 72 20 3d 3d 20 30 |HitFxTic|ker == 0|
|00005f60| 20 29 0d 0a 09 09 09 48 | 69 74 4e 6f 72 6d 61 6c | ).....H|itNormal|
|00005f70| 20 3d 20 4e 6f 72 6d 61 | 6c 28 20 54 65 61 72 4f | = Norma|l( TearO|
|00005f80| 66 66 4d 6f 6d 65 6e 74 | 75 6d 20 29 3b 09 2f 2f |ffMoment|um );.//|
|00005f90| 20 53 65 74 20 44 69 72 | 65 63 74 69 6f 6e 61 6c | Set Dir|ectional|
|00005fa0| 20 65 78 70 6c 6f 73 69 | 6f 6e 20 62 61 73 65 64 | explosi|on based|
|00005fb0| 20 6f 6e 20 48 69 74 4e | 6f 72 6d 61 6c 0d 0a 0d | on HitN|ormal...|
|00005fc0| 0a 09 09 45 78 70 6c 6f | 64 65 28 20 4c 6f 63 61 |...Explo|de( Loca|
|00005fd0| 74 69 6f 6e 2c 20 48 69 | 74 4e 6f 72 6d 61 6c 20 |tion, Hi|tNormal |
|00005fe0| 29 3b 0d 0a 0d 0a 09 09 | 47 6f 74 6f 53 74 61 74 |);......|GotoStat|
|00005ff0| 65 28 27 44 79 69 6e 67 | 27 29 3b 0d 0a 09 7d 0d |e('Dying|');...}.|
|00006000| 0a 7d 0d 0a 0d 0a 0d 0a | 2f 2f 0d 0a 2f 2f 20 53 |.}......|//..// S|
|00006010| 68 6f 74 20 64 6f 77 6e | 20 69 6e 20 66 6c 61 6d |hot down| in flam|
|00006020| 65 73 0d 0a 2f 2f 0d 0a | 73 74 61 74 65 20 53 68 |es..//..|state Sh|
|00006030| 6f 74 44 6f 77 6e 0d 0a | 7b 0d 0a 09 69 67 6e 6f |otDown..|{...igno|
|00006040| 72 65 73 20 54 72 69 67 | 67 65 72 2c 20 48 65 61 |res Trig|ger, Hea|
|00006050| 64 56 6f 6c 75 6d 65 43 | 68 61 6e 67 65 2c 20 50 |dVolumeC|hange, P|
|00006060| 68 79 73 69 63 73 56 6f | 6c 75 6d 65 43 68 61 6e |hysicsVo|lumeChan|
|00006070| 67 65 2c 20 46 61 6c 6c | 69 6e 67 2c 20 42 72 65 |ge, Fall|ing, Bre|
|00006080| 61 74 68 54 69 6d 65 72 | 3b 0d 0a 0d 0a 09 65 76 |athTimer|;.....ev|
|00006090| 65 6e 74 20 43 68 61 6e | 67 65 41 6e 69 6d 61 74 |ent Chan|geAnimat|
|000060a0| 69 6f 6e 28 29 20 7b 7d | 0d 0a 09 65 76 65 6e 74 |ion() {}|...event|
|000060b0| 20 53 74 6f 70 50 6c 61 | 79 46 69 72 69 6e 67 28 | StopPla|yFiring(|
|000060c0| 29 20 7b 7d 0d 0a 09 66 | 75 6e 63 74 69 6f 6e 20 |) {}...f|unction |
|000060d0| 50 6c 61 79 46 69 72 69 | 6e 67 28 66 6c 6f 61 74 |PlayFiri|ng(float|
|000060e0| 20 52 61 74 65 2c 20 6e | 61 6d 65 20 46 69 72 69 | Rate, n|ame Firi|
|000060f0| 6e 67 4d 6f 64 65 29 20 | 7b 7d 0d 0a 09 66 75 6e |ngMode) |{}...fun|
|00006100| 63 74 69 6f 6e 20 50 6c | 61 79 57 65 61 70 6f 6e |ction Pl|ayWeapon|
|00006110| 53 77 69 74 63 68 28 57 | 65 61 70 6f 6e 20 4e 65 |Switch(W|eapon Ne|
|00006120| 77 57 65 61 70 6f 6e 29 | 20 7b 7d 0d 0a 09 66 75 |wWeapon)| {}...fu|
|00006130| 6e 63 74 69 6f 6e 20 50 | 6c 61 79 54 61 6b 65 48 |nction P|layTakeH|
|00006140| 69 74 28 76 65 63 74 6f | 72 20 48 69 74 4c 6f 63 |it(vecto|r HitLoc|
|00006150| 2c 20 69 6e 74 20 44 61 | 6d 61 67 65 2c 20 63 6c |, int Da|mage, cl|
|00006160| 61 73 73 3c 44 61 6d 61 | 67 65 54 79 70 65 3e 20 |ass<Dama|geType> |
|00006170| 64 61 6d 61 67 65 54 79 | 70 65 29 20 7b 7d 0d 0a |damageTy|pe) {}..|
|00006180| 09 73 69 6d 75 6c 61 74 | 65 64 20 66 75 6e 63 74 |.simulat|ed funct|
|00006190| 69 6f 6e 20 50 6c 61 79 | 4e 65 78 74 41 6e 69 6d |ion Play|NextAnim|
|000061a0| 61 74 69 6f 6e 28 29 20 | 7b 7d 0d 0a 09 65 76 65 |ation() |{}...eve|
|000061b0| 6e 74 20 46 65 6c 6c 4f | 75 74 4f 66 57 6f 72 6c |nt FellO|utOfWorl|
|000061c0| 64 28 65 4b 69 6c 6c 5a | 54 79 70 65 20 4b 69 6c |d(eKillZ|Type Kil|
|000061d0| 6c 54 79 70 65 29 20 7b | 09 7d 0d 0a 09 66 75 6e |lType) {|.}...fun|
|000061e0| 63 74 69 6f 6e 20 52 65 | 64 75 63 65 43 79 6c 69 |ction Re|duceCyli|
|000061f0| 6e 64 65 72 28 29 20 7b | 20 7d 0d 0a 09 66 75 6e |nder() {| }...fun|
|00006200| 63 74 69 6f 6e 20 4c 61 | 6e 64 54 68 75 6d 70 28 |ction La|ndThump(|
|00006210| 29 20 7b 09 7d 0d 0a 09 | 65 76 65 6e 74 20 41 6e |) {.}...|event An|
|00006220| 69 6d 45 6e 64 28 69 6e | 74 20 43 68 61 6e 6e 65 |imEnd(in|t Channe|
|00006230| 6c 29 20 7b 09 7d 0d 0a | 09 66 75 6e 63 74 69 6f |l) {.}..|.functio|
|00006240| 6e 20 4c 69 65 53 74 69 | 6c 6c 28 29 20 7b 7d 0d |n LieSti|ll() {}.|
|00006250| 0a 09 73 69 6e 67 75 6c | 61 72 20 66 75 6e 63 74 |..singul|ar funct|
|00006260| 69 6f 6e 20 42 61 73 65 | 43 68 61 6e 67 65 28 29 |ion Base|Change()|
|00006270| 20 7b 09 7d 0d 0a 09 66 | 75 6e 63 74 69 6f 6e 20 | {.}...f|unction |
|00006280| 44 69 65 64 28 43 6f 6e | 74 72 6f 6c 6c 65 72 20 |Died(Con|troller |
|00006290| 4b 69 6c 6c 65 72 2c 20 | 63 6c 61 73 73 3c 44 61 |Killer, |class<Da|
|000062a0| 6d 61 67 65 54 79 70 65 | 3e 20 64 61 6d 61 67 65 |mageType|> damage|
|000062b0| 54 79 70 65 2c 20 76 65 | 63 74 6f 72 20 48 69 74 |Type, ve|ctor Hit|
|000062c0| 4c 6f 63 61 74 69 6f 6e | 29 20 7b 7d 0d 0a 09 66 |Location|) {}...f|
|000062d0| 75 6e 63 74 69 6f 6e 20 | 54 61 6b 65 44 61 6d 61 |unction |TakeDama|
|000062e0| 67 65 28 20 69 6e 74 20 | 44 61 6d 61 67 65 2c 20 |ge( int |Damage, |
|000062f0| 50 61 77 6e 20 69 6e 73 | 74 69 67 61 74 65 64 42 |Pawn ins|tigatedB|
|00006300| 79 2c 20 56 65 63 74 6f | 72 20 68 69 74 6c 6f 63 |y, Vecto|r hitloc|
|00006310| 61 74 69 6f 6e 2c 0d 0a | 09 09 09 09 09 09 09 56 |ation,..|.......V|
|00006320| 65 63 74 6f 72 20 6d 6f | 6d 65 6e 74 75 6d 2c 20 |ector mo|mentum, |
|00006330| 63 6c 61 73 73 3c 44 61 | 6d 61 67 65 54 79 70 65 |class<Da|mageType|
|00006340| 3e 20 64 61 6d 61 67 65 | 54 79 70 65 29 20 7b 7d |> damage|Type) {}|
|00006350| 0d 0a 0d 0a 09 66 75 6e | 63 74 69 6f 6e 20 56 65 |.....fun|ction Ve|
|00006360| 68 69 63 6c 65 53 77 69 | 74 63 68 56 69 65 77 28 |hicleSwi|tchView(|
|00006370| 62 6f 6f 6c 20 62 55 70 | 64 61 74 69 6e 67 29 20 |bool bUp|dating) |
|00006380| 7b 7d 0d 0a 09 66 75 6e | 63 74 69 6f 6e 20 44 72 |{}...fun|ction Dr|
|00006390| 69 76 65 72 44 69 65 64 | 28 29 3b 0d 0a 09 66 75 |iverDied|();...fu|
|000063a0| 6e 63 74 69 6f 6e 20 50 | 72 6f 63 65 73 73 4d 6f |nction P|rocessMo|
|000063b0| 76 65 28 66 6c 6f 61 74 | 20 44 65 6c 74 61 54 69 |ve(float| DeltaTi|
|000063c0| 6d 65 2c 20 76 65 63 74 | 6f 72 20 4e 65 77 41 63 |me, vect|or NewAc|
|000063d0| 63 65 6c 2c 20 65 44 6f | 75 62 6c 65 43 6c 69 63 |cel, eDo|ubleClic|
|000063e0| 6b 44 69 72 20 44 6f 75 | 62 6c 65 43 6c 69 63 6b |kDir Dou|bleClick|
|000063f0| 4d 6f 76 65 2c 20 72 6f | 74 61 74 6f 72 20 44 65 |Move, ro|tator De|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.